Назад | Перейти на главную страницу

Перенаправление через httpd.conf с Django и mod_wsgi

Я пытаюсь использовать модуль Apache Rewrite для перенаправления пользователей до того, как Django перехватит запрос. Я пробовал следующее, чтобы перенаправить пользователя с "test.php" на страницу "ссылки"

<VirtualHost 10.0.0.3>
   WSGIDaemonProcess mydomain.com processes=1 threads=15 display-name=$
   WSGIProcessGroup mydomain.com

   DocumentRoot "/home/james/www"
   <Directory "/home/james/www">
   Options +FollowSymlinks
   RewriteEngine On
   RewriteRule ^test.php links [NC,R=301,L]

   Order allow,deny
   Allow from all 
   </Directory> 

   WSGIScriptAlias / "/home/james/www/app.wsgi"

   ServerName mydomain.com

</VirtualHost>

Этот подход не работает (при переходе на mydomain.com/test.php он не перенаправляет меня на страницу «ссылок», которая существует).

Есть ли способ реализовать перезапись с помощью mod_wsgi?

Он должен работать, если правило mod_rewrite написано правильно и в правильном контексте. Вероятно, это не так, потому что вы делаете это внутри контекста Каталога и неправильно настроили для этого контекста.

Почему бы не использовать более простую директиву RedirectPermanent:

RedirectPermanent /test.php http://mydomain.com/links

Видеть:

http://httpd.apache.org/docs/2.2/mod/mod_alias.html#redirectpermanent

Это должно быть вне контекста Справочника и на верхнем уровне в VirtualHost.