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

Перенаправить на скрипт Python в .htaccess с сохранением URL-адреса запроса

У меня есть веб-сайт, настроенный на Apache для http://www.example.com находится в /var/www/example.com/. Для произвольного подпути этого веб-сайта я хотел бы, чтобы все запросы обрабатывались скриптом Python. например все запросы на http://www.example.com/foo/bar/ и ниже будет обрабатываться /var/www/example.com/foo/bar/index.py.

Один из способов добиться этого - использовать ScriptAlias в конфигурации / виртуальном хосте Apache, но я бы хотел сделать это в .htaccess файл, если это возможно, так как я бы предпочел не изменять конфигурацию Apache каждый раз, когда я создаю новый каталог со скриптом Python.

Я пробовал сделать это, используя mod_rewrite как показано ниже, но у этого есть проблемы в том, что сценарий Python считает, что URL-адрес запроса содержит /index.py/ это означает, что некоторые URL-адреса, которые он генерирует для перенаправления, неверны (это вызывает такие проблемы, как этот вопрос).

RewriteEngine on
RewriteBase /foo/bar/

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.py/$1 [L]

Есть ли другой способ сделать это или мне придется использовать ScriptAlias?

Не похоже, что это возможно, используя чисто .htaccess и mod_rewrite поэтому это нужно будет сделать с помощью ScriptAlias или в самом сценарии.