通常我只是使用在线工具来制定 url mod_rewrite 规则,但这不起作用。
Dynamic url: http://sub.domain.com/index.php?page=index&name=test
Rewritten url: http://sub.domain.com/test OR http://sub.domain.com/test/
My htaccess:
RewriteRule ^([^/]+)/?$ index.php?page=index&name=$1 [L]
我没有传递“test”作为变量名,而是始终获取值“index.php”
有哪位大师知道吗?
答案1
RewriteRule ^(.*)/$ index.php?page=index&name=$1 [L]
可能更多是您想要的。
另外,你可以使用类似如下的方法预先处理 URL 的尾部斜杠:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule !(.*)/$ %{REQUEST_URI}/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ index.php?page=index&name=$1 [L]