htaccess - 深度超过 1 级的重定向不起作用

htaccess - 深度超过 1 级的重定向不起作用

刚刚转移到 GoDaddy 上的共享主机,我正在尝试使我的 .htaccess 规则正常运行。

以下是我所拥有的:

ErrorDocument 404 /error.php
Options FollowSymLinks

RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} ^www\.mydomain\.org$
RewriteRule ^(.*)$ http://mydomain.org/$1 [R=301,L]

RewriteRule ^view/(\w+)$ viewitem.php?itemid=$1 [R=301,L]
RewriteRule ^category/(\w+)$ viewcategory.php?tag=$1 [R=301,L]

RewriteRule ^faq$ faq.php
RewriteRule ^about$ about.php
RewriteRule ^contact$ contact.php
RewriteRule ^submit$ submit.php
RewriteRule ^contactmsg$ handler-contact.php

域名根目录下的所有页面似乎都在运行,例如 mydomain.org/faq、mydomain.org/about 都在运行。

但每当我尝试 mydomain.org/category/somecategory 时,我都会得到 404。我该如何修复我的 .htaccess 以遵守这些深度超过 1 级的规则?

谢谢,

编辑:我已将规则修改如下:

RewriteRule ^view/(.*)$ viewitem.php?itemid=$1
RewriteRule ^category/(.*)$ viewcategory.php?tag=$1

有人能确认/否认这是恰当的怎么修复这个问题?

答案1

您采用的新方法(.*)是正确的。

相关内容