В настоящее время я занимаюсь переносом доменов [old_domain] -> [new_domain].
Проблема возникла, когда я дошел до правил htaccess и файла конфигурации в /etc/httpd/conf/httpd.conf:
httpd.conf
AllowOverride All
Изначально я не мог найти, где разместить вышеупомянутое, чтобы разрешить работу правил перезаписи .htaccess, и я все еще обеспокоен тем, что могу неправильно разрешить это для всех.
Я пробовал вставить что-то вроде, но безрезультатно:
<Directory "/path/to/django/project/">
AllowOverride All
</Directory>
Как только я получил работающие перезаписи файла .htaccess (используя следующее), URL-адреса начали возвращать что-то странное.
.htaccess в каталоге проекта django
RewriteEngine On
RewriteCond %{HTTP_HOST} !^old_domain.com/$ [NC]
RewriteRule ^(.*)$ http://new_domain.com/$1 [L,R=301]
URL отправлен
http://old_domain.com/news/
URL получен
http://new_domain.com/apache/production.wsgi/news/
Почти там ... но может ли кто-нибудь предположить, почему это могло происходить? Я действительно не хочу удалять /apache/production.wsgi/ на стороне new_domain (если этого не ожидается?)
Заранее спасибо.
Изменить: одно быстрое исправление, включенное с использованием django HttpResponsePermanentRedirect. Это плохая практика?