Я установил apache2 на свой Ubuntu 14.04 vServer. Кроме того, я настроил обратный прокси-сервер для программы, работающей на порту 5000. Теперь у меня есть два вопроса:
Возможно ли показать другую страницу, если программа на порту 5000 не запущена ? Как добавить новые страницы рядом с обратным прокси? Как example.com/newpage. Я попытался просто создать новый каталог «newpage» в моем корневом каталоге документа с помощью файла index.html. Но это не сработало.Краткие ответы на 1. + 2: в принципе, да; может оказаться сложным, в зависимости от вашей конкретной конфигурации обратного прокси.
One: вы можете использовать mod_proxy_balancer и настроить отказоустойчивый кластер, состоящий из двух членов, локальную службу, прослушивающую порт 5000, и другую VirtualHost на одном и том же прослушивании apache на произвольном порту:
<Proxy "balancer://mycluster">
BalancerMember "http://localhost:5000"
BalancerMember "http://localhost:5001" status=+H
</Proxy>
(для этого вам нужно будет сконфигурировать дополнительный экземпляр VirtualHost на вашем сервере, слушая порт 5001, с общим внутренним RewriteRule для ответа только с его индексной страницей. )
Two: не зная вашу конкретную конфигурацию обратного прокси, я бы предложил объединить mod_rewrite с mod_proxy.
RewriteCond "%{REQUEST_URI}" !^/newpage
RewriteRule ^/(.*) balancer://mycluster/$1 [P]
, чтобы включить указанную конфигурацию отказа.
] Отказ от ответственности
Это предложение выходит из моей головы и может содержать синтаксические и логические ошибки; Я готов помочь, если у вас возникнут какие-либо проблемы с этим. Это просто скрипты и не запущенные конфигурации. Без знания вашей конфигурации apache сложно предложить правильные решения.Краткие ответы на 1. + 2: в принципе, да; может оказаться сложным, в зависимости от вашей конкретной конфигурации обратного прокси.
One: вы можете использовать mod_proxy_balancer и настроить отказоустойчивый кластер, состоящий из двух членов, локальную службу, прослушивающую порт 5000, и другую VirtualHost на одном и том же прослушивании apache на произвольном порту:
<Proxy "balancer://mycluster">
BalancerMember "http://localhost:5000"
BalancerMember "http://localhost:5001" status=+H
</Proxy>
(для этого вам нужно будет сконфигурировать дополнительный экземпляр VirtualHost на вашем сервере, слушая порт 5001, с общим внутренним RewriteRule для ответа только с его индексной страницей. )
Two: не зная вашу конкретную конфигурацию обратного прокси, я бы предложил объединить mod_rewrite с mod_proxy.
RewriteCond "%{REQUEST_URI}" !^/newpage
RewriteRule ^/(.*) balancer://mycluster/$1 [P]
, чтобы включить указанную конфигурацию отказа.
] Отказ от ответственности
Это предложение выходит из моей головы и может содержать синтаксические и логические ошибки; Я готов помочь, если у вас возникнут какие-либо проблемы с этим. Это просто скрипты и не запущенные конфигурации. Без знания вашей конфигурации apache сложно предложить правильные решения.Краткие ответы на 1. + 2: в принципе, да; может оказаться сложным, в зависимости от вашей конкретной конфигурации обратного прокси.
One: вы можете использовать mod_proxy_balancer и настроить отказоустойчивый кластер, состоящий из двух членов, локальную службу, прослушивающую порт 5000, и другую VirtualHost на одном и том же прослушивании apache на произвольном порту:
<Proxy "balancer://mycluster">
BalancerMember "http://localhost:5000"
BalancerMember "http://localhost:5001" status=+H
</Proxy>
(для этого вам нужно будет сконфигурировать дополнительный экземпляр VirtualHost на вашем сервере, слушая порт 5001, с общим внутренним RewriteRule для ответа только с его индексной страницей. )
Two: не зная вашу конкретную конфигурацию обратного прокси, я бы предложил объединить mod_rewrite с mod_proxy.
RewriteCond "%{REQUEST_URI}" !^/newpage
RewriteRule ^/(.*) balancer://mycluster/$1 [P]
, чтобы включить указанную конфигурацию отказа.
] Отказ от ответственности
Это предложение выходит из моей головы и может содержать синтаксические и логические ошибки; Я готов помочь, если у вас возникнут какие-либо проблемы с этим. Это просто скрипты и не запущенные конфигурации. Без знания вашей конфигурации apache сложно предложить правильные решения.