摘要:作為用戶,所能使用的命令受到限制。啟用,需要修改,啟用,并可以用限制特定命令的使用。如果需要使用以外的其他文件名,可以用指令來改變。例如,需要使用,則可以在服務(wù)器配置文件中按以下方法配置。
簡述
.htaccess文件(或者"分布式配置文件")提供了針對目錄改變配置的方法, 即,在一個特定的文檔目錄中放置一個包含一個或多個指令的文件, 以作用于此目錄及其所有子目錄。作為用戶,所能使用的命令受到限制。管理員可以通過Apache的AllowOverride指令來設(shè)置。
Unix、Linux系統(tǒng)或者是任何版本的Apache Web服務(wù)器都是支持.htaccess的,但是有的主機(jī)服務(wù)商可能不允許你自定義自己的.htaccess文件。
啟用.htaccess,需要修改httpd.conf,啟用AllowOverride,并可以用AllowOverride限制特定命令的使用。如果需要使用.htaccess以外的其他文件名,可以用AccessFileName指令來改變。例如,需要使用.config ,則可以在服務(wù)器配置文件中按以下方法配置:AccessFileName .config 。
籠統(tǒng)地說,.htaccess可以幫我們實現(xiàn)包括:文件夾密碼保護(hù)、用戶自動重定向、自定義錯誤頁面、改變你的文件擴(kuò)展名、封禁特定IP地址的用戶、只允許特定IP地址的用戶、禁止目錄列表,以及使用其他文件作為index文件等一些功能。
DirectoryIndex zxg.html #改變默認(rèn)文件 RewriteEngine On #打開或關(guān)閉運行時刻的重寫引擎,設(shè)置位置:服務(wù)器配置, 虛擬主機(jī), 目錄.htaccess "-d" (是一個目錄[directory]) 將TestString視為一個路徑名并測試它是否存在而且是一個目錄 "-f" (是一個常規(guī)的文件[file]) 將TestString視為一個路徑名并測試它是否存在而且是一個常規(guī)的文件 "-l" (是一個符號連接[link]) 將TestString視為一個路徑名并測試它是否存在而且是一個符號連接 redirect|R [=HttpCode] (強(qiáng)制重定向 redirect) (使新的URL成為一個URI) 為前綴的Substitution可以強(qiáng)制性執(zhí)行一個外部重定向。 如果code沒有指定,則產(chǎn)生一個HTTP響應(yīng)代碼302(臨時性移動)。 注意: 在使用這個標(biāo)記時,必須確保該替換字段是一個有效的URL last|L (最后一個Url規(guī)則的重寫last) 立即停止重寫操作,并不再應(yīng)用其他重寫規(guī)則。這個標(biāo)記可以阻止當(dāng)前已被重寫的URL為其后繼的規(guī)則所重寫 "forbidden|F" (強(qiáng)制URL為被禁止的 forbidden) 強(qiáng)制當(dāng)前URL為被禁止的,即,立即反饋一個HTTP響應(yīng)代碼403(被禁止的) "nocase|NC" (忽略大小寫 no case)它使Pattern忽略大小寫,即, 在Pattern與當(dāng)前URL匹配時,"A-Z" 和"a-z"沒有區(qū)別。綜合示例
#注意,#只能放在句首,下面句尾的#實際應(yīng)用要刪除掉 #改變默認(rèn)文件 DirectoryIndex zxg.html #偽靜態(tài) RewriteEngine On #打開或關(guān)閉運行時刻的重寫引擎,設(shè)置位置:服務(wù)器配置, 虛擬主機(jī), 目錄.htaccess ReWriteRule ^(d+)_(d+).html news.php?cid=$1&aid=$2 [NC,R=301,L] #301定向,不區(qū)分大小寫 #訪問的不是一個文件或目錄的時候就跳轉(zhuǎn)到一個404.html RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d ReWriteRule .* 404.html [L] #去掉index.php RewriteCond $1 !^(index.php|images|robots.txt) #任何非 index.php、images 和 robots.txt 的 HTTP 請求都被指向 index.php。 RewriteRule ^(.*)$ /index.php/$1 [L] #防盜鏈 RewriteCond %{HTTP_REFERER} !^$ #如果來源地址不為空 RewriteCond %{HTTP_REFERER} !^http://web1.com #如果不是以http://web1.com開頭 RewriteCond %{REQUEST_FILENAME} .*.(jpg|jpeg|gif|png) [NC] #如果訪問的是圖片 ReWriteRule .* no.png [L] #就定向到no.png上面去
1.注意它的順序是從上到下,符合某一條件就不走下面條件;所以在寫偽靜態(tài)的時候要考慮這個先后順序;
2.#注釋號只能放在句首,不能放在句尾;
3.不需要重啟Apache,立即生效;
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/36015.html
摘要:簡述主要的功能就是實現(xiàn)的跳轉(zhuǎn),它的正則表達(dá)式是基于語言??苫诜?wù)器級的和目錄級的兩種方式。否則里沒有它里面的規(guī)則也不會生效。基于目錄級的要注意一點那就是必須打開此目錄的屬性且在里要聲明。 簡述 Rewirte主要的功能就是實現(xiàn)URL的跳轉(zhuǎn),它的正則表達(dá)式是基于Perl語言。可基于服務(wù)器級的(httpd.conf)和目錄級的 (.htaccess)兩種方式。如果要想用到rewrite模...
摘要:如果你的服務(wù)器提供某些資源的下載,那么你就必須多加小心諸如迅雷等下載軟件,因為它們可能把你網(wǎng)站資源吸干,并且影響你的正常訪客訪問。 目錄一、準(zhǔn)備開始:mod_rewrite 二、利用.htaccess實現(xiàn)URL重寫(rewrite)與URL重定向(redirect) 將.htm頁面映射到.php 臨時重定向(R=302)與永久重定向(R=301) 為什么要用重定向?——重定向和URL...
摘要:如果你的服務(wù)器提供某些資源的下載,那么你就必須多加小心諸如迅雷等下載軟件,因為它們可能把你網(wǎng)站資源吸干,并且影響你的正常訪客訪問。 目錄一、準(zhǔn)備開始:mod_rewrite 二、利用.htaccess實現(xiàn)URL重寫(rewrite)與URL重定向(redirect) 將.htm頁面映射到.php 臨時重定向(R=302)與永久重定向(R=301) 為什么要用重定向?——重定向和URL...
閱讀 1860·2021-11-25 09:43
閱讀 1502·2021-09-02 15:21
閱讀 3467·2019-08-30 15:52
閱讀 1509·2019-08-30 12:48
閱讀 1306·2019-08-30 10:57
閱讀 2936·2019-08-26 17:41
閱讀 686·2019-08-26 11:59
閱讀 1376·2019-08-26 10:41