很多站長朋友都注意到一個實作了URL位址靜态化的動态網站往往在搜尋引擎中能夠獲得一個好的排名。的确,在搜尋引擎中随便搜尋一個關鍵詞,排名靠前的基本都是靜态頁面。這篇文章豆芽給大家介紹如果通過.htaccess檔案來将URL位址靜态化。
值得大家注意的是,這裡配置 . htaccess 檔案是在你的伺服器是 apache 的情況下,如果你的伺服器是 IIS 的話,那就需要配置 httpd.ini 檔案了。怎麼配置 httpd.ini 檔案,豆芽在前面文章中有專門提到過,不熟悉的朋友可以再去看一下,在SEO教程裡面。
這裡我們要實作怎樣一個功能呢?簡要說就是你在浏覽器位址欄中輸入一下位址:
http://www.aichengxu.com/index.html
但是你的項目中壓根就沒有這個檔案,如果沒有使用 .htaccess 檔案實作URL位址重寫的話,那麼你的浏覽器中将顯示一個 404 的錯誤,提示你該頁面沒有找到。如果使使用者在輸入了上面的網址後不提示 404 錯誤,并且轉到我們想向使用者展示的頁面呢?那就需要配置 .htaccess 檔案。
什麼是 .htaccess 檔案呢?實際上 .htaccess 檔案中是我們定義的一些規則,這些規則将實作像上面那樣輸入請求的URL位址,轉換為另一個URL位址,而不是浏覽器預設的提示404頁面沒有找到。URL位址重寫這項功能由 Apache 伺服器通過 mod_rewrite 子產品提供。PHP不用對他做任何的處理。
下面豆芽向大家詳細介紹步驟
1、安裝 mod_rewrite 子產品
因為 Apache 伺服器預設是沒有打開 mod_rewrite 子產品的,是以我們必須手動來啟動。打開 Apache 的配置檔案 httpd.conf 檔案,找到下面一行:
#LoadModule rewrite_module modules/mod_rewrite.so
前面的 # 号是 Apache 配置檔案的注釋符,也就是 Apache 伺服器沒有加載該子產品。将前面的 # 号去掉,儲存後重新開機 Apache 伺服器,這是我們就實作了加載 mod_rewrite 這個子產品了。(提示:任何一次對 Apache 的配置檔案 httpd.conf 檔案都是要重新啟動 Apache 才能生效的)
2、建立 .htaccess 檔案
在 windows 系統預設的情況下是不能建立沒有檔案名的檔案的,這裡建議大家使用 vim 這個編輯器來建立。方法是打開 vim 編輯器随便輸入一段文字,然後儲存為 .htaccess 即可。很多朋友因為習慣了 windows 系統,是以建立這個檔案很頭疼。vim 這款編輯器很不錯,推薦大家用。下載下傳位址: www.vim.org/download.php
3、配置 .htaccess 檔案
.htaccess 檔案務必放在你項目的根目錄下,不要放在其他檔案夾下。配置 .htaccess 檔案的格式如下:
<ifmodule mod_rewrite.c>
RewriteEngine On
#這裡是你的規則
</ifmodule>
解釋:RewriteEngine On :啟動URL重寫引擎
先看如下一個配置好了的 .htaccess 檔案執行個體:
<ifmodule mod_rewrite.c>
RewriteEngine On
RewriteRule ^index\.html$ /aichengxu/index.php [L]
RewriteRule ^column/(.*)/([0-9]*).html$ /aichengxu/column.php?ID=$2 [L]
</ifmodule>
分析:上面 .htaccess 檔案就寫了二條規則。當在浏覽器中輸入 index.html 時,背景調用的是 index.php 檔案。符号“^”是以後面的字元開頭,相信熟悉正規表達式的朋友不會陌生吧,符号“$”是以前面的字元結尾。符号L表示停止處理接下來的規則。最後一條當我們在浏覽器中輸入 column/23/22.html 時,背景調用 column.php檔案并傳遞參數ID=22 。
配置規則,大家照着那一條去寫吧,記得每行後面加個 L 符号。