生活随笔
收集整理的這篇文章主要介紹了
php重定向和静态化,PHP实现URL静态化
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
再有一種就是偽靜態(tài)方式,即用戶和搜索引擎看到的是.html后綴的靜態(tài)頁面,但實際上它還是動態(tài)程序,只不過是通過某種方式進行了偽裝。
這種方式也有兩種實現(xiàn)方式:
第一種是通過web服務(wù)器,進行url rewrite實現(xiàn)鏈接的靜態(tài)化,下面以apache為例來說明一下其實現(xiàn)方式。對于有服務(wù)器配置權(quán)限的用戶,推薦使用apache的mod_rewrite模塊,這里假設(shè)已經(jīng)安裝好mod_rewrite模塊。打開apache的配置文件,找到相應(yīng)主機的部分,添加以下代碼:
| ?代碼如下 | 復(fù)制代碼 |
| rewriteengine on rewriterule ^/abc/([a-z] )/([0-9] ).html$ /abc.php?action=$1&id=$2 然后在shell里執(zhí)行service httpd reload,讓apache重新載入配置就好了。 但對于我們大多數(shù)人來講,我們購買的只是空間,根本沒有權(quán)限去修改apache的配置文件,那就沒有辦法了嗎?不,當然有辦法,首先我們進入到我們的空間的根目錄下(如public_html),然后建立一個文件名為.htaccess的文件。這個文件內(nèi)容基本如下: | ?代碼如下 | 復(fù)制代碼 | | rewriteengine on rewritebase / rewriterule ^post/([0-9] ).htm read.php?1 rewriterule ^post/([0-9] )_([0-9] ).htm read.php?1&page=2 rewriterule ^post/([0-9] )_([0-9] )_([0-9] ).htm read.php?1&page=2&=3 php程序?qū)懛? | ?代碼如下 | 復(fù)制代碼 | function? mod_rewrite(){ if ( isset ( $_server [ ’ path_info ’ ])){ $url?? =?? substr ( $_server [ ’ path_info ’ ] , 1 ); $url?? =?? explode ( ’ / ’ , $url ); foreach? ( $url?? as?? $key?? => $value ){ if ( $key % 2 != 1 ){ if ( $value != ’’ ) $_get [ $value ] = $url [ $key 1 ]; $querystring [] = $value . ’ = ’ . $url [ $key 1 ]; } } $_server [ ’ query_string ’ ] = implode ( " & " , $querystring ); $_server [ ’ php_self ’ ] = substr ( $_server [ ’ php_self ’ ] , 0 , strpos ( $_server [ ’ php_self ’ ] , ’ .php ’ ) 4 ); $_server [ ’ request_uri ’ ] = $_server [ ’ php_self ’ ] . ’ ? ’ . $_server [ ’ query_string ’ ]; } } |
|
|
總結(jié)
以上是生活随笔為你收集整理的php重定向和静态化,PHP实现URL静态化的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。