【发布时间】:2014-05-22 19:15:20
【问题描述】:
我正在开发一个开放的购物车网站,我正在编辑 .htaccess 文件以允许 SEO 友好的 URL。
如果有帮助,系统位于子目录中。
有些工作是在我接手之前由另一位目前没有提供任何帮助的开发人员完成的。 (我已经取出了实际的网址,因为我目前每个帖子只能发布有限数量的链接)
RedirectMatch permanent ^/$ http://www.furnishingsdirect.co.uk/new
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.furnishingsdirect\.co\.uk [NC]
RewriteRule (.*) http://www.furnishingsdirect.co.uk/$1 [R=301,L]
RewriteEngine on
Options +FollowSymLinks#RewriteCond %{THE_REQUEST} ^.*/index\.php [NC]
RewriteRule ^(.*)index.php$ http://www.furnishingsdirect.co.uk/$1 [R=301,L]
第二个 .htaccess 文件包含:
Options +FollowSymlinks
Options -Indexes
<FilesMatch "\.(tpl|ini|log)">
Order deny,allow
Deny from all
</FilesMatch>
RewriteBase /new/
RewriteRule ^sitemap.xml$ index.php?route=feed/google_sitemap [L]
RewriteRule ^googlebase.xml$ index.php?route=feed/google_base [L]
RewriteRule ^download/(.*) /index.php?route=error/not_found [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css)
RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]
每当我尝试通过 url 访问网站时
http://www.furnishingsdirect.co.uk
或
http://www.furnishingsdirect.co.uk/new/
它指出“Firefox 检测到服务器正在以永远不会完成的方式重定向对该地址的请求。”
在我通过 123 reg 更改网络转发之前,我很肯定这段代码之前没有问题。我转发了家具直接域,以便它始终将用户定向到其中包含商店系统的目录。我认为这是导致问题的原因,123 reg 表示该网站需要一些时间来调整,但我不确定。任何人都可以帮助阐明这种情况吗?任何帮助,将不胜感激。
此域的 DNS 指向虚拟主机,它最初指向 123 reg 持有/转发服务。
【问题讨论】:
-
我不是重定向专家,但我认为这条规则
RedirectMatch permanent ^/$ http://www.furnishingsdirect.co.uk/new将始终重定向到http://www.furnishingsdirect.co.uk/new,即使 URL 已经是http://www.furnishingsdirect.co.uk/new,因为 Apache 将从 @987654329 应用.htaccess先是@,然后是http://www.furnishingsdirect.co.uk/new/……不是吗?我认为只有当 URL 不包含该部分时,您才应该重定向到/new/,不是吗?
标签: .htaccess opencart redirect-loop