Я застрял, пытаясь заставить apache проверять реферер каждого запроса, чтобы перенаправить / переписать его на указанный c порт. В моей среде apache настроен на прослушивание портов 80 и 443 и перенаправление запроса на указанные c порты в зависимости от запрошенного URI.
Я добавил новый веб-сервер в эту среду на порт 8080, который будет целью, когда найден путь /websession
. Это происходит в файле конфигурации с:
ProxyPass /websession http://127.0.0.1:8080/websession
ProxyPassReverse /websession http://127.0.0.1:8080/websession
Проблема в том, что некоторые запросы не приходят с /websession
в URI, но я проверял и HTTP-реферер в заголовках, всегда иметь это (это происходит из-за. html абсолютных путей поиска файлов, которые я не могу контролировать)
Я пытаюсь Apache проверить на реферере, перед любой маршрутизацией (как ProxyPass выше ) случается, для /websession
Пока, читая документы, мне удалось прийти с этим:
RewriteEngine On
RewriteCond %{HTTP_REFERER} .*\/websession.* [NC]
RewriteRule "(.*)" "http://%{HTTP_HOST}/websession%{REQUEST_URI}"
, который, кажется, не работает, потому что я его поставил на неправильной позиции, или условие правила неверно.
Кроме того, у меня проблемы с активацией активации журналов для этого, возможно, условие никогда не активируется, и поэтому журнал никогда не появляется.
Может быть, есть и лучшее решение, кроме этого, есть ли кто-нибудь с советами для этого?