標籤:iter targe 有用 apach 例子 tle pac 作用 size
1、.htaccess檔案使用前提
.htaccess的主要作用就是實現url改寫,也就是當瀏覽器通過url訪問到伺服器某個檔案夾時,作為主人,我們可以來接待這個url,具體地怎樣接待它,就是此檔案的作用。所有的訪問都是通過URL實現,所以.htaccess的作用非同小可。正因為此,所以一般地網站通過設定.htaccess,通過一個十分友好的url吸引使用者進來,然後用.htaccess把使用者帶到需要訪問的位置。
要想使用這個強大功能,就得開啟apache裡面的重寫模組。
前面的文章中曾經講到過windows和ubuntu開啟 rewrite模組使用.htaccess 。
其實開啟模組大體的步驟都是一樣的,無論是Windows和linux。
2、.htaccess基本文法介紹
開啟重寫引擎 :RewriteEngine on
設定重寫的根目錄:RewriteBase / — 說明 :因為定義了這個檔案夾,所以對應的替換就有了一個參照。
匹配所有合格請求:RewriteCond — 說明:RewriteCond 定義了一系列規則條件,這個指令可以有一條或者多條,只有使用者拿來的url符合這些條件之後,我們的.htaccess才開始接待,否則使用者就直接自己去訪問所需要的目錄了。
舉個例子,為了能讓搜尋引擎更多地抓取我們的網頁而避免重複抓,我們通常把沒有www的網域名稱重新導向到www.XXX.com,如下就實現了這個功能:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^nbphp\.com$ [NC]
RewriteRule ^(.*)$ http://www.nbphp.com/$1 [R=301,L]
上例便把nbphp.com 重新導向到www.nbphp.com
%{HTTP_HOST} 是指取得使用者訪問的URL的主網域名稱 然後空格後面是一個Regex匹配,意識就是說是否是 nbphp.com 。
如果使用者訪問使用的URL滿足所有列出的RewriteCond 提出的條件,那麼進行下一步RewriteRule 即開始進行引導,這才開始實現.htaccess檔案的重要功能。
同樣,前面是Regex,使用者分析使用者的除了主網域名稱nbphp.com之外的URL ,^(.*)$的意思就是所有的內容。 然後空格後面寫的是我們引導使用者訪問的目錄,我們帶著他走到新的一個網域名稱上。$1 指的是前面括弧裡匹配url所得到的內容。
這樣就是一個完整的小例子。關於RewriteCond裡 如何調用url的某個部分,我們可以參考這篇文章(Apache的Mod_rewrite學習 (RewriteCond重寫規則的條件);
檔案來源:http://www.cnblogs.com/yyl8781697/articles/php-htaccess.html
PHP架構中.htaccess檔案作用