Я пытаюсь решить проблему с внутренней настройкой ProxyPass на http-сервере apache версии 2.4. Все отлично работает иначе, именно этот вопрос ProxyPass, что я не решить:Apache ProxyPass для разделения VirtualHost на ту же систему
действую несколько виртуальных хостов на основе имени на одной системе с example.org
, выступающей в качестве хоста по умолчанию, и все узлы, использующие https
протокол на порту 443 с действительный (подпись) сертификаты:
- example.org
- host1.example.org
- host2.example.org
Для одного типа запроса я хочу настроить внутреннее правило ProxyPass на example.org
.
https://host1.example.org/_-_-_/bar => https://example.org/foo/bar
ProxyPassReverse является не требуется, так как результат не возвращается. (Я также попытался с, но это не имеет никакого значения):
Это набор правил, который является частью конфигурации хоста host1.example.org
:
SSLProxyEngine On
ProxyRequests Off
ProxyVia Off
ProxyPass "/_-_-_/bar" "https://example.org/foo/bar"
прокси делает работы, это прокси запрос. Но проблема в том, что он не запрашивает правильный хост! Так что не example.org
, но изначально запрошен хост host1.example.org
, поэтому он сам просит. Я могу ясно видеть как запросов в том же файле журнала доступа, в то время как журнал доступа example.org
остается нетронутым. Очевидно, что это поведение приводит к статусу 404 http. Это также отображается на стороне клиента как сообщение об ошибке, сгенерированное хостом host1.example.org
(отлично), но отображающее внутренний путь /foo/bar
(не штраф). Поэтому мой вопрос, очевидно, таков:
Что нужно изменить, чтобы запрос прокси внутренне обрабатывался желаемым виртуальным хостом?
Привет. Я был бы признателен, если вы взглянете на [эту комнату] (https://chat.stackoverflow.com/rooms/156413/temp) и прочитаете мои комментарии. – Shafizadeh