Mod-Rewrite
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
任何人都可以確認/否認這是解決此問題的正確方法嗎?
你做的新方法(用
(.*)
)是正確的。