2017-04-15 99 views
1

我無法將以下鏈接的mod_rewrite的RewriteCond匹配根目錄+文件名

http://example.com/test    

http://example.com/pages.php?p=test 

但隨後沒有轉換以下鏈接

http://example.com/foo/test (http://example.com/foo/pages.php?p=test) 
http://example.com/bar/test (http://example.com/bar/pages.php?p=test) 

我現在設置是這樣的:

RewriteCond %{DOCUMENT_ROOT}/$1 !-d 
RewriteCond %{DOCUMENT_ROOT}/$1.php !-f 
RewriteCond %{REQUEST_URI} ^/$1$ 
RewriteRule ^([^\.]+)$ pages.php?p=$1 [NC,L] 

我似乎遇到了最後一個RewriteCond (RewriteCond %{REQUEST_URI} ^/$1$)似乎無法檢測URL更改的問題。有任何想法嗎?

回答

0

要轉換/測試/pages.php?p=test您可以使用以下規則:

RewriteEngine on 
RewriteRule ^([^/.]+)$ /pages.php?p=$1 [NC,L] 
+0

真棒這樣的作品,爲什麼工作能不能請你解釋一下,對我來說看起來像包括所有網址一樣。有什麼我失蹤? – m10653

相關問題