❶ php 偽靜態規則
1、要能夠實現偽靜態,伺服器環境本身支持url rewrite重寫功能,能正確識別出以路徑符號 "/" 為間隔的url地址,這是必要的條件。
以apache為例說明如可開啟偽靜態:打開apache的配置文件(apache/conf/httpd.conf)找到對應的web目錄配置項,修改為如下:
<Directory "YourDocumentRoot"> //前面的YourDocumentRoot改為你自己的web路徑
Options Indexes FollowSymLinks ExecCGI Includes
AllowOverride All
Order allow,deny
Allow from all
</Directory>
注意:確保 AllowOverride 為 All
重啟服務即可。
2、在你的web目錄下添加一個.htaccess文件,在裡面添加代碼如下:
<IfMole mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond $1 !^(index\.php|robots\.txt|tags)
RewriteRule ^(.*)$ index.php/$1 [L]
</IfMole>
3、再試一下就可以的了,如果不行先看一下自己的PHP版本,最好是5.0以上的,.htaccess文件的代碼也調試一下。
❷ IIS 伺服器下的PHP偽靜態要怎麼弄啊
IIS配置支持偽靜態 ISAPI Rewrite(win2003系統)
第一:首先我們需要下載一個ISAPI_Rewrite,有精簡版和完全版,一般精簡版只能對伺服器全局進行配置,而完整版可以對伺服器上的各個網站進行偽靜態配置.對於個人站長來說,精簡版就足夠了.
下載:http://www.isapirewrite.com/download/isapi_rwl_0055.msi
第二:下載完成後,可以找到安裝包里的.msi的文件,安裝即可.
隨便裝在哪都可以,默認是裝在C:\Program Files\Helicon下,要注意的是這個目錄everyone要有讀取許可權。我就因為當時伺服器許可權配的比較嚴格,默認安裝Helicon這目錄EVERYONE是沒有任何許可權的,結果老是出現:Service Unavailable 。
第三:打開Internet 信息服務,右鍵,web站點屬性,點擊ISAPI篩選器選項卡.添加篩選器,這里的名稱可以自己隨意填寫,路徑自己指定ISAPI_Rewrite.dll,然後確定.
下面我們先做一個測試頁new.asp,可以按照下面的代碼寫
然後,在瀏覽器中輸入:
http://127.0.0.1/new.asp?id=1234
接著你就可以在網頁上看到一行文字:"1234"
看到這幾個數字,就說明你測試成功了.
現在我們開始來配置ISAPI_Rewrite :
打開ISAPI_Rewrite的目錄,把httpd.ini的只讀屬性去掉,打開編輯.我們現在是需要把new.asp?id=1234修改成類似new_1234.html的路徑,因此,我們需要在httpd.ini中添加一句
RewriteRule /new_([0-9,a-z]*).html /new.asp?id={GetProperty(Content)}
保存後,我們就可以測試一下這個網址了:http://127.0.0.1/new_1234.html
可以看到頁面上的"1234"了吧,就這樣偽靜態配置成功了!
❸ 求助PHP偽靜態,如何將動態PHP頁面改為偽靜態頁面
偽靜態實際上就是把 index.php?act=about&cid=1 將這種形式的動態路徑用 about-1.html 這種形式輸出,也就是說瀏覽器每次訪問about-1.html地址能打開相應的index.php?act=about&cid=1動態網址。
偽靜態的實現本質上是配置伺服器進行路徑轉換,根據不同的伺服器環境,配置方法也不太一樣,PHP+iis6的話就要配置httpd.ini文件,php+iis7就要配置web.config,PHP+apache就要配置.htaccess文件(或者httpd.conf)
.htaccess(或者httpd.conf)文件的規則示例:
RewriteEngine on
RewriteRule ^/?(index|guestbook|online)\.html$ index\.php [L]
RewriteRule ^/?(eindex)\.html$ index\.php?act=$1 [L]
RewriteRule ^/?(index|guestbook|online)-([0-9]+).html$ index\.php\?p=$2 [L]
RewriteRule ^/?([a-z0-9]+)_([0-9]+).html$ index\.php\?act=$1&id=$2 [L]
RewriteRule ^/?([a-z0-9]+)-([0-9]+).html$ index\.php\?act=$1&cid=$2 [L]
RewriteRule ^/?([a-z0-9]+)-([0-9]+)-([0-9]+).html$ index\.php\?act=$1&cid=$2&p=$3 [L]
httpd.ini示例:
[ISAPI_Rewrite]
RepeatLimit 32
# Block external access to the httpd.ini and httpd.parse.errors files
RewriteRule /httpd(?:\.ini|\.parse\.errors).* / [F,I,O]
# Block external access to the Helper ISAPI Extension
RewriteRule .*\.isrwhlp / [F,I,O]
RewriteRule ^/(index|guestbook|online)\.html$ /$1\.php
RewriteRule ^/(eindex).html$ /index\.php\?act=$1
RewriteRule ^/(index|guestbook|online)-([0-9]+).html$ /$1\.php\?p=$2
RewriteRule ^/([a-z0-9]+)_([0-9]+).html$ /index\.php\?act=$1&id=$2
RewriteRule ^/([a-z0-9]+)-([0-9]+).html$ /index\.php\?act=$1&cid=$2
RewriteRule ^/([a-z0-9]+)-([0-9]+)-([0-9]+).html$ /index\.php\?act=$1&cid=$2&p=$3