我的 mod_rewrite 需要有关我当前正在处理的网站的帮助。
假设我有这个网站http://example.com
我希望能够在/之后设置任何值,如下所示路由到page.php
http://example.com/value1
http://example.com/value2
指向
http://example.com/page.php?id=value1
http://example.com/page.php?id=value2
,分别
但是,当我指向“admin”
时,不会路由到该页面http://example.com/admin/
我试过
RewriteEngine on
RewriteCond $1 !^(admin)
RewriteRule ^(.*)$ /page.php?id=$1 [L]
但它不起作用。有什么想法吗?
答案 0 :(得分:3)
$1
不可用。我相信你所寻找的是接近:
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_URI} !^admin/.*
RewriteRule ^(.*)$ page.php?id=$1 [L]
此规则会导致不以admin/
开头的所有内容转到/page.php
。我不相信%{param}是可选的。使用RewriteBase /
表示您不必在/
和/admin
上添加/page.php
。如果您使用/page.php
而不是page.php
如果您有访问服务器值的方法,那么最终规则可以是:
RewriteRule . page.php [L]
您可以在REQUEST_URI
答案 1 :(得分:0)