【发布时间】:2016-01-16 23:41:22
【问题描述】:
我一直在 WAMP 中对此进行测试,但无法使其正常工作。我相信由于收到错误消息,WAMP 已正确设置,并且当我不使用 .htaccess 文件时它可以正常工作。
我有一个用于测试的文件名Feedback.php。而不是显示为 www.mysite.com/Feedback.php。我试图让它成为 www.mysite.com/Feedback。
.htaccess 文件
RewriteEngine on
RewriteRule ^Feedback.php/?$ Feedback [NC]
我收到的错误信息是
“未找到
在此服务器上未找到请求的 URL /Feedback。”
reWriteRule 工作需要两个文件吗?
我也试图让我的 index.php 成为 www.mysite.com,这可能是一个不同的怪物。
我的导航栏链接应该是什么?现在他们是<a href="Feedback.php">Feedback</a> href 应该是href="Feedback" 一旦我得到这个工作?
编辑:我把 ReWriteRule 变量倒过来了。而不是
RewriteRule ^Feedback.php/?$ Feedback [NC]
我应该有
RewriteRule ^Feedback/$ /Feedback.php [NC,L]
重写看起来并没有发生,因为它仍然读取 localhost/Feedback.php
【问题讨论】:
-
你在做相反的事情。你的规则应该是
RewriteRule ^Feedback$ /Feedback.php [NC,L]。这总是像RewriteRule WHAT WHERE -
谢谢!没有意识到这一点。我的 URL 仍然显示为 localhost/Feedback.php,因此虽然它已加载,但重命名似乎不起作用。
标签: php apache .htaccess mod-rewrite