У меня есть приложение django в / (обслуживаемом WSGI) и WordPress блог в / blog /. Я пытаюсь настроить перенаправление 301 с example.com на www.example.com, и мне удалось это сделать, кроме блога WordPress. Доступ к блогу запускает бесконечный цикл перенаправления.
Конфигурация Apache в /etc/apache2/sites-enabled/example.com
<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 имеет .htaccess в корневом каталоге /srv/www/example.com/public_html:
.
<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>