apache htaccess重写规则使重定向循环

问题描述:

Apache .htaccess URL重写和重定向有一个非常奇怪的问题。这是我的设置: 我有一个单一的入口点(index.php)直接在我的apache文档根目录下的zend应用程序(称之为“公共”文件夹)。我还拥有公共文件夹下的所有其他公共文件(图像,js,css等)。在这里,我还在“博客”文件夹下有一个WordPress博客。这里有一个空的测试文件夹太apache htaccess重写规则使重定向循环

的问题

当我去example.com/blog,我重定向到http://www.example.com/blog(正确),然后http://www.example.com/blog/(只是一个额外的/在结束)最后到http://example.com/blog/ - 我们又回到了我们开始的地方。循环继续。我不明白的是为什么wordpress会尝试删除www?我猜这是wordpress,因为我的空测试文件夹行事得很好!

另一个奇怪的是,我可以真正去www.example.com/blog/wp-login.php或example.com/blog/wp-login.php它实际上加载了!!!!!

请帮助。我“M真的绝望:(非常感谢你碰巧

其他的事情:

当我去example.com,我正确地重定向到www.example.com

当我去www.example.com,我正确地留在我

当我去www.example.com/test或example.com/test,行为是正确的。

设置

所以我的.htaccess文件执行以下操作:

  • 如果没有www,然后添加它,做301重定向。下面的代码我用

RewriteCond %{HTTP_HOST} ^example.com [NC]

RewriteRule ^(.*)$ http://www.example.com/ $1 [L,R=301]

  • 如果请求是不是一种资源(图像等),或博客,然后通过改写加载Zend的应用程序的index.php

RewriteRule !((^blog(/)?.*$)|(.(js|ico|gif|jpg|jpeg|png|css|cur|JPG|html|txt))$) index.php

再次感谢您的帮助! Ali

您是否检查Wordpress中的设置?登录管理员并检查Settings/Basics(或者它是用英语称呼的,我正在使用瑞典语翻译)。在那里你可以配置Wordpress正在使用的URL。如果它的设置没有www.,Wordpress将尝试重定向。

+0

哦,男人,你是最好的。这正是我需要做的,一切都得到了解决。再次感谢男士。 – Ali 2010-05-06 21:39:12