PHP如何實現網址僞靜態

 Apache的 mod_rewrite是比較強大的,在進行網站建設時,能夠經過這個模塊來實現僞靜態。php

 

主要步驟以下: html

  1.檢測Apache是否開啓mod_rewrite功能     能夠經過php提供的phpinfo()函數查看環境配置,找到「Loaded Modules」,其中列出了全部apache2handler已經開啓的模塊,若是裏面包括「mod_rewrite」,則已經支持,再也不須要繼續設 置。若是沒有開啓「mod_rewrite」,則打開目錄 apache目錄下的「/apache/conf/」 ,找到 httpd.conf 文件,再找到「LoadModule rewrite_module」,將前面的」#」號刪除即表示取用該功能。    若是沒有查找到「LoadModule」 區域,能夠在最後一行加入「LoadModule rewrite_module ,modules/mod_rewrite.so」(獨佔一行),以後重啓apache服務器。再經過phpinfo()函數查看環境配置就有 「mod_rewrite」爲項了。正則表達式

   2.讓apache服務器支持.htaccess    如何讓本身的本地APACHE服務器支持:「htaccess」呢? 只需修改apache的httpd.conf設置就能夠讓 APACHE支持「.htaccess」了。打開 APACHE目錄的CONF目錄下的httpd.conf文件,找到: Options FollowSymLinks AllowOverride None 改成 Options FollowSymLinks AllowOverride All 就好了。apache

   3.創建.htaccess 文件    創建.htaccess文件時要注意,不能直接建,方法是經過記事本中的另存爲菜單,在文件名窗口輸入:「.htaccess」,而後點擊保存。瀏覽器

   4.rewrite規則學習    在新建.htaccess文件以後,就在裏面寫入如下內容: RewriteEngine on #rewriteengine爲重寫引擎開關on爲開啓off爲關閉 RewriteRule ([0-9]{1,})$index.php?id=$1 在這裏,RewriteRule是重寫規則,是用正則表達式的句子,([0-9]{1,})表 示由數字組成的,$表示結束標誌,表示以數字結束!若是要實現僞靜態頁面,規則以下: RewriteEngine on RewriteRule ([a-zA-Z]{1,})-([0-9]{1,}).html$index.php?action=$1&id=$2 在爲個正則表達式中, ([a-zA-Z]{1,})-([0-9]{1,}).html$是規則,index.php?action=$1&id=$2是要替換的格 式,$1表明第1括號匹配的值,$2表明第二個括號的值,如此類推! 測試PHP腳本以下: index.php文件中的代碼以下: echo ‘你的Action值爲:’ . $_GET['action']; echo ‘ ’; echo ‘ID值爲:’ . $_GET['id']; ?>服務器

  在瀏覽器地址欄輸入: localhost/page-18.html 輸出的是: 你的Action值爲:page ID值爲:18ide

相關文章
相關標籤/搜索