我有.htaccess
文件:
Options +FollowSymlinks
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} ^somedomain.com [NC]
RewriteRule ^(.*)$ http://www.somedomain.com/$1 [R=301,NC]
RewriteRule ^r/(.*)$ index.php?rid=$1 [NC]
但是当我请求像 www.somedomain.com/r/123
这样的 URL 并显示像 www.somedomain.com/index.php?rid 这样的 URL 时,最后一个条件会在浏览器中执行重定向=123
。但我需要在不更改 URL 的情况下调用此脚本。
出了什么问题?
最佳答案
您使用了R=301
尝试使用L
,如下所示:
RewriteCond %{HTTP_HOST} ^somedomain.com [L]
RewriteRule ^(.*)$ http://www.somedomain.com/$1 [L]
RewriteRule ^r/(.*)$ index.php?rid=$1 [L]
关于.htaccess RewriteRule 在浏览器中无需更改 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13194043/