Я пытаюсь запустить CherryPy за Apache, используя mod_rewrite, как описано в документации CherryPy ( BehindApache , ModRewrite ), и он не работает.
Редактировать: Ранее мое описание этой проблемы было несколько неточным. Кажется, я забыл перезапустить Apache во время некоторых моих попыток. Я значительно изменил вопрос.
Когда я запускаю свою программу (очень простая программа «hello world», похожая на первый учебный файл, поставляемый с CherryPy), она, кажется, работает нормально. Если я запускаю curl "http://127.0.0.1:8080"
с моего сервера, я вижу вывод и вижу какую-то запись об этом в журнале CherryPy.
Однако, если я пытаюсь получить доступ к сайту из моего браузера, я получаю сообщение об ошибке 403 Forbidden, говорящее «У вас нет прав доступа к / на этом сервере». Я не вижу записи об этом в журнале CherryPy. Я попытался поместить RewriteRule (RewriteRule ^(.*) <a href="http://127.0.0.1:8080" rel="nofollow">http://127.0.0.1:8080</a>$1 [proxy]
) в соответствующий раздел VirtualHost моего файла httpd.conf, как с косой чертой, так и без нее, и оба раза я получал одну и ту же ошибку. В моем журнале ошибок Apache я вижу такие строки:
[Пн 27 сентября 15:54:11 2010] [ошибка] [клиент 123.45.67.89] попытка сделать удаленный запрос от mod_rewrite без включенного прокси: proxy: http://127.0.0.1:8080/
Я попытался вместо этого поместить RewriteRule в файл .htaccess моего сайта, и я получил ошибки 404 Not Found с такими строками в журнале ошибок:
[Пн 27 сентября 13:31:54 2010] [ошибка] [клиент 123.45.67.89] Попытка обслуживания каталога: прокси: http://127.0.0.1:8080/
Я все еще не видел записей в журнале CherryPy.
Я решил посмотреть, что произойдет, если я попытаюсь получить доступ к сайту без запуска CherryPy, и я получил то же самое. Как будто Apache безуспешно пытается связаться с программой CherryPy, если я помещаю строку в httpd.conf, и совершенно не знаю об этом, когда я помещаю строку в .htaccess.
Кто-нибудь здесь знает, почему это происходит, и что с этим делать? Я перепробовал все, что мог придумать. Мой сайт работает на частном сервере DreamHost с Debian 4.3.2-1.1, Apache 2.2.15, Python 2.6.5 и CherryPy 3.1.2.
Редактировать 2: lazy1, я попробовал ваше предложение, и оно не помогло. Я получаю те же 403 ошибки.