mod_rewrite 的问题
这是我的 htaccess 文件:
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^(.*) url.php?p=$1 [NC]
我试图像这样重定向: mysite.com/sometext 到 mysite.com/url.php?p=sometext
但是使用该文件,浏览器总是给我一个错误; 内部服务器错误,服务器遇到内部错误或配置错误,无法完成您的请求。
this is my htaccess file:
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^(.*) url.php?p=$1 [NC]
Im trying to redirect like this: mysite.com/sometext to mysite.com/url.php?p=sometext
But with that file the browser gives me always an error; Internal Server Error, The server encountered an internal error or misconfiguration and was unable to complete your request.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试添加一些条件以防止 mod_rewrite 永远在内部循环:
或者:
在
RewriteRule
之前Try adding some conditions to keep mod_rewrite from looping internally forever:
Or:
Right before the
RewriteRule
以下应该有效。 “L”确保它将是最后重写规则,这应该防止循环。
RewriteRule ^/(.*)$ https://mysite.com/url.php?p=$1 [NC,R,L]
这个也可能有效(需要尝试一下)
RewriteRule ^/(.*)$ url.php?p=$1 [NC,L]
The following should work. The "L" ensures that it will be last rewrite rule, which should prevent the loop.
RewriteRule ^/(.*)$ https://mysite.com/url.php?p=$1 [NC,R,L]
This one might work too (will need to try it out)
RewriteRule ^/(.*)$ url.php?p=$1 [NC,L]