Django app,wordpress博客,apache 301规范重定向 - >为什么我有无限循环?

时间:2011-04-05 06:09:13

标签: apache wordpress mod-rewrite http-status-code-301

我在/(由WSGI提供)有一个django应用程序,在/ blog /有一个wordpress博客。我正在尝试从example.com设置301重定向到www.example.com,并设法这样做,除了wordpress博客。到达博客会触发无限重定向循环。

/etc/apache2/sites-enabled/example.com上的Apache配置

<VirtualHost *:80>
    ServerName example.com
    Redirect permanent / http://www.example.com/
</VirtualHost>

<VirtualHost *:80>
   ServerName www.example.com
   DocumentRoot /srv/www/example.com/public_html/
   Alias /blog "/srv/www/example.com/public_html"
</VirtualHost>

wordpress博客在根目录/srv/www/example.com/public_html中有一个.htaccess:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>

1 个答案:

答案 0 :(得分:0)

好的,我发现了为什么服务器提供无限重定向。

在example.com上配置了Wordpress博客(在设置中)。因此,它会在内部重写从www.example.com/blog到example.com/blog的URL。此时,我的重定向(example.com - &gt; www.example.com)将启动,发送无限循环。

解决方案只是将网站设置为“www.example.com”而不是“example.com”。配置是正确的。