dongnong3799 2017-04-15 04:24
浏览 375
已采纳

mod_rewrite RewriteCond匹配根目录+文件名

I am having trouble converting the following links

http://example.com/test              

to

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

but then not convert the following links

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)

My current setup is this:

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

I am seeming to have trouble with the last RewriteCond (RewriteCond %{REQUEST_URI} ^/$1$) not seeming to detect the URL change. Any ideas?

  • 写回答

1条回答 默认 最新

  • douba8048 2017-04-15 05:48
    关注

    To convert /test to /pages.php?p=test you can use the following rule:

     RewriteEngine on
     RewriteRule ^([^/.]+)$ /pages.php?p=$1 [NC,L]
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?