Php htaccess更改不会以应有的方式响应以清除URL
我有很多网址Php htaccess更改不会以应有的方式响应以清除URL,php,.htaccess,clean-urls,Php,.htaccess,Clean Urls,我有很多网址 http://www.mydomain.com/aboutUs.php http://www.mydomain.com/contactUs.php 等等 我在.htaccess文件中编写的重写规则是 RewriteEngine on RewriteRule ^([a-zA-Z0-9]+)$ contactUs.php RewriteRule ^([a-zA-Z0-9]+)$ aboutUs.php 等等 现在当我使用干净的URL时,比如说 http://www.mydomain
http://www.mydomain.com/aboutUs.php
http://www.mydomain.com/contactUs.php
等等
我在.htaccess文件中编写的重写规则是
RewriteEngine on
RewriteRule ^([a-zA-Z0-9]+)$ contactUs.php
RewriteRule ^([a-zA-Z0-9]+)$ aboutUs.php
等等
现在当我使用干净的URL时,比如说
http://www.mydomain.com/aboutUs
它总是指向主页…即<代码>http://www.mydomain.com/,但URL仍然是http://www.mydomain.com/aboutUs
以及其他URL的类似行为
此外,在使用干净的URL时,横幅中的图像不会出现。。。因为我已经为图像使用了src
属性作为images/header logo.png
其中,HTTP\u PATH=“HTTP://”$_服务器[“HTTP_主机])
有人能告诉我。htaccess有什么问题吗?还是别的什么问题
根据@HAKRE评论更新
我需要URL看起来像
http://www.mydomain.com/aboutUs
并且它应该指向http://www.mydomain.com/aboutUs.php
尝试使用重定向;在rewrite语句后面加一个[R],或者如果希望apache停在那里,则加一个[R,L]。或者您也可以使用[R=301]格式,例如发送301永久重定向代码
所以一行看起来像这样:
重写规则^([a-zA-Z0-9]+)$contactUs.php[R]
希望这能有所帮助。您的
htaccess
有点奇怪:您有两条规则在完全相同的正则表达式上触发?你认为这是怎么回事?你真的需要花5分钟阅读一篇教程,然后再提出这样的问题。这就是所谓的正则表达式。这些可以有不同的方言,mod rewrite文档告诉您它使用的是PCRE方言,这也是PHP使用的方言。你可以在这里找到解释:。比教程更好的是,首先阅读手册。这通常需要更多的理解,但能帮助你更好地度过余生。所以值得花时间投资。生命太短暂了。手册如下:-指令参考: