文件夹URL由于.htaccess而搞砸了

时间:2013-05-08 23:31:22

标签: .htaccess url redirect

在我的htaccess中,我有以下代码:

RewriteRule ^([a-zA-Z0-9_-]+)$ category.php?parent=$1

这段代码可以完美地满足我的需要,并为类别制作漂亮的网址,因为我相信你们都知道。

我遇到的唯一问题是我在服务器上创建了一个名为“about”的文件夹。在about文件夹中,我有一个我想要显示的index.html文件。如果您尝试访问site.com/about/上的网址,则会显示该页面,并且网址保持完全相同。

但是,如果有人访问site.com/about上的网址,则会自动将其重定向到site.com/about/?parent=about。有人会在这个网址上访问它,然后谷歌可能会最终索引它并导致重复的页面。

我知道这是由于htaccess,但我不明白为什么会发生这种情况,我将如何解决它?

谢谢。

1 个答案:

答案 0 :(得分:1)

{。{1}}中的结尾/未被.htaccess中的正则表达式捕获,但about/仅由about个字符组成。

在您的规则之前添加此内容:

a-z

您的约会网址不会被重写。

无论如何,请考虑使用更安全的网址方案,例如RewriteCond %{REQUEST_URI} !^/about/?$ :如果用户想要创建名为“about”的类别该怎么办?

有关条件here

的更多信息