2016-07-21 7 views
0

я использую апачский ProxyPass, чтобы показать содержимое с другого сервера на мой базовый серверApache ProxyPass - показать локальный файл, если существует

я использую этот код

<VirtualHost *:80> 
ServerAdmin [email protected] 
DocumentRoot /var/www/html/2 
ServerName 2.example.com 
ProxyPass /tv http://t1.example.com/tv/ 
ProxyPassReverse /tv http://t1.example.com/tv/ 
ErrorLog logs/errorlive_log 
CustomLog logs/access_live common 
</VirtualHost> 

так есть способ сначала проверить, если файл существуют на 2.example.com (/ var/www/html/2), если файл существует с этого сервера, и если файл не существует, то запрос и сервер от t1.example.com/tv/

-и у меня есть второй вопрос: , если сервер2 служит для видео, которое находится на сервере1 и на сервере 2 a повторно смотреть 10 пользователей (10Mbps), так, с какого сервер будет принят 10Mbps с сервера 2 или сервера 1 или оба сервера будут иметь 10Mbps нагрузки

ответ

1

В апаче документ, вы можете увидеть заказ PROXYPASS и RewriteRule директивы

Директивы RewriteRule оцениваются до ProxyPass.

Таким образом, вы можете добавить правила перезаписи, который проверяет, если файл существует

<VirtualHost *:80> 
ServerAdmin [email protected] 
DocumentRoot /var/www/html/2 
ServerName 2.example.com 

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} -f 
RewriteRule .* - [L] 

ProxyPass /tv http://t1.example.com/tv/ 
ProxyPassReverse /tv http://t1.example.com/tv/ 
ErrorLog logs/errorlive_log 
CustomLog logs/access_live common 

</VirtualHost> 

тест RewiteCond если % {} REQUEST_FILENAME обычный файл, а затем RewriteRule переписывает в файл. Это может быть html, изображение, php-файл и т. Д.

Теперь вы можете адаптироваться к вашим потребностям.

EDIT Для второго вопроса я забыл ответить. Извини, я виноват.

Согласно документации Apache mod_proxy: «Обратный прокси (или шлюз), напротив, отображается клиенту точно так же, как обычный веб-сервер. Никакой специальной конфигурации на клиенте не требуется. Клиент делает обычные запросы на контент в пространстве имен обратного прокси-сервера. Затем обратный прокси-сервер решает, куда отправлять эти запросы и возвращает содержимое, как если бы оно было само по себе ».

Итак, оба сервера загружены.

+0

вопрос относительно второго вопроса – arlind

 Смежные вопросы

  • Нет связанных вопросов^_^