#apache #configuration #proxypass
#apache #конфигурация #proxypass
Вопрос:
Я попробовал ответить на эту проблему. Как объединить несколько директив ProxyPass в Apache?Но я получаю сообщение об ошибке, когда запускаю apache, говоря ProxyPass|ProxyPassMatch can not have a path when defined in a location.
Мой 000-default.conf содержит приведенный ниже код
<VirtualHost *:80>
include location1.conf
include location2.conf
</VirtualHost>
и мое location1 имеет,
<Location /web/?_escaped_fragment_=/>
ProxyPass /phpmyadmin !
ProxyPass / http://localhost:8082/
ProxyPassReverse / http://localhost:8082/
</Location>
и мой location2 имеет,
<Location /web/#!/>
ProxyPass /phpmyadmin !
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
</Location>
Ответ №1:
Аналогично, как видно из упомянутого вами вопроса, необходимо отбросить первый аргумент ProxyPass
ProxyPassReverse
предложений and при вложении в предложение under <Location>
.
Поэтому рассмотрите возможность изменения вашей конфигурации следующим образом:
location1:
<Location /web/?_escaped_fragment_=/>
ProxyPass /phpmyadmin !
ProxyPass http://localhost:8082/ # <== Dropped '/'
ProxyPassReverse http://localhost:8082/ # <== Dropped '/'
</Location>
location2:
<Location /web/#!/>
ProxyPass /phpmyadmin !
ProxyPass http://localhost:8080/ # <== Dropped '/'
ProxyPassReverse http://localhost:8080/ # <== Dropped '/'
</Location>
Это должно работать нормально.
Комментарии:
1. К сожалению, это не так. Он по-прежнему жалуется на то же самое `ProxyPass / phpmyadmin!`
2. @oussaka Приятно это слышать 🙂