我是新手重写网址并想知道我将如何重写网页
从此 / profile / 4
对此 /profile.php?id=4
到目前为止我有这个规则
RewriteRule ^profile/([0-9]+)/?$ profile.php?id=$1
但它会在浏览器中显示
Firefox检测到服务器正在以永远无法完成的方式重定向此地址的请求。
它在浏览器地址栏中显示/profile/4/index.php,这是不正确的。
.htaccess文件
<Files .htaccess>
order allow,deny
deny from all
</Files>
Options +FollowSymlinks
RewriteEngine on
#ErrorDocument 404 /test.php
DirectoryIndex test.php
RewriteRule settings editProfile.php
RewriteRule update update.php
RewriteRule home test.php
RewriteRule ^profile/([0-9]+)/?$ profile.php?id=$1
答案 0 :(得分:4)
你几乎就在那里。请尝试使用此
RewriteRule ^profile/(.*)$ profile.php?id=$1
我发现这个好的免费资源在线帮助您test your rewrite rules,然后再将它们发布到您的实际网站。这可能有助于未来。看起来你的规则应该像你发布的那样有效。问题必定在其他地方。
答案 1 :(得分:1)
你的规则很好,所以有一个重定向的地方与之相冲突。我想你在/profile/4
没有真正的目录,所以他们的主要候选人是mod_negotiation。试试这个:
Options -MultiViews