Поиск по сайту:

Перенаправление URL-адреса веб-сайта с одного сервера на другой сервер в Apache


Как и было обещано в наших предыдущих двух статьях («Выполнение внутреннего перенаправления с помощью mod_rewrite» и «Показ пользовательского контента на основе браузера»), в этом посте мы объясним, как выполнить перенаправление на ресурс, который был перемещен с одного сервера на другой сервер в Apache, используя Модуль mod_rewrite.

Предположим, вы меняете дизайн интранет-сайта вашей компании. Вы решили хранить содержимое и стили (файлы HTML, JavaScript и CSS) на одном сервере, а документацию – на другом. более крепкий.

Рекомендуется к прочтению: 5 советов по повышению производительности вашего веб-сервера Apache

Однако вы хотите, чтобы это изменение было прозрачным для ваших пользователей, чтобы они по-прежнему могли получать доступ к документам по обычному URL-адресу.

В следующем примере файл с именем assets.pdf был перемещен из /var/www/html в 192.168.0.100 (имя хоста: web) в то же место в 192.168.0.101 (имя хоста: web2).

Чтобы пользователи могли получить доступ к этому файлу при просмотре 192.168.0.100/assets.pdf, откройте файл конфигурации Apache на 192.168.0.100 и добавьте следующее правило перезаписи (или вы также можете добавить следующее правило в свой файл .htaccess):

RewriteRule "^(/assets\.pdf$)" "http://192.168.0.101$1"  [R,L]

где $1 — это заполнитель для всего, что соответствует регулярному выражению внутри круглых скобок.

Теперь сохраните изменения, не забудьте перезапустить Apache, и давайте посмотрим, что произойдет, когда мы попытаемся получить доступ к assets.pdf, перейдя по адресу 192.168.0.100/assets.pdf:

Рекомендуется к прочтению: 25 полезных приемов использования .htaccess для веб-сайтов

На приведенном выше примере мы видим, что запрос, сделанный для assets.pdf на 192.168.0.100, фактически был обработан 192.168.0.101.

tail -n 1 /var/log/apache2/access.log

В этой статье мы обсудили, как выполнить перенаправление на ресурс, который был перемещен на другой сервер. В заключение я настоятельно рекомендую вам ознакомиться с руководством по mod_rewrite и руководством по перенаправлению Apache для дальнейшего использования.

Как всегда, не стесняйтесь использовать форму комментариев ниже, если у вас есть какие-либо сомнения по поводу этой статьи. Мы с нетерпением ждем вашего ответа!