PHP如何?網址偽靜態,php偽靜態_PHP教程

來源:互聯網
上載者:User

PHP如何?網址偽靜態,php偽靜態


Apache的 mod_rewrite是比較強大的,在進行網站建設時,可以通過這個模組來實現偽靜態。

主要步驟如下:

  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 就行了。

  3.建立.htaccess 檔案 建立.htaccess檔案時要注意,不能直接建,方法是通過記事本中的另存新檔菜單,在檔案名稱視窗輸入:“.htaccess”,然後點擊儲存。

  4.rewrite規則學習 在建立.htaccess檔案之後,就在裡面寫入以下內容: RewriteEngine on #rewriteengine為重寫引擎開關on為開啟off為關閉 RewriteRule ([0-9]{1,})$index.php?id=$1 在這裡,RewriteRule是重寫規則,是用Regex的句子,([0-9]{1,})表示由數字組成的,$表示結束標誌,表示以數字結束!如果要實現偽靜態頁面,規則如下: RewriteEngine on RewriteRule ([a-zA-Z]{1,})-([0-9]{1,}).html$index.php?action=$1&id=$2 在為個Regex中,([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值為:18

  呵呵,改寫成功!

下面將我自己配置偽靜態一些個人經驗分享一下:

  開始接觸偽靜態,看著很神奇,以為很難,其實很簡單,就是在伺服器中多配置幾個虛擬網域名稱,類似真正的訪問網址。 只需三步

A.首先 在Apache Apache模組中,開啟 vhost_alias_moudle

B.修改httpd.conf檔案,在這個檔案中,搜尋rewrite .找到 LoadModule rewrite_module modules/mod_rewrite.so 去掉前面的#

C.修改這個檔案,在路徑 D:\wamp\bin\apache\Apache2.2.21\conf\extra 下的httpd-vhosts.conf 檔案,照著樣本加一個就OK了


ServerAdmin webmaster@dummy-host2.example.com
DocumentRoot "d:/wamp/www/dz"
ServerName localhost.www.dz.cn
ErrorLog "logs/dummy-host2.example.com-error.log"
CustomLog "logs/dummy-host2.example.com-access.log" common

D.在路徑 C:\Windows\System32\drivers\etc 下 的 hosts 檔案中配置一下

127.0.0.1 localhost.www.dz.cn 重啟服務即可。 大功告成!

**************************************************************************** 大家新年快樂!

註明:在瀏覽器輸入中 localhost.www.dz.cn,即可訪問,我加一個localhost是為了和正式的網址加以區別。有不懂的可以QQ:1024900614聯絡我,方便大家一起探討,共同進步!

你的偽靜態規則全部寫在 .htaccess 檔案中,由於已經開啟了偽靜態,會預設載入該檔案。 寫這個.htaccess 檔案 要會寫正則哦,學習一些正則基礎吧!

http://www.bkjia.com/PHPjc/958503.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/958503.htmlTechArticlePHP如何?網址偽靜態,php偽靜態 Apache的 mod_rewrite是比較強大的,在進行網站建設時,可以通過這個模組來實現偽靜態。 主要步驟如下: 1...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.