Мой сайт большой, поэтому я зеркалирую его на другом сервере, используя Rsync, каждый час.
www.example.com (главная)
www2.example.com (зеркало)
Но мне нужно, чтобы некоторые большие файлы (> 500 МБ) читались непосредственно в www2, потому что у моего второго сервера неограниченная пропускная способность, а у основного сервера пропускная способность только 1 ТБ.
Моя идея:
- попробуйте прочитать большой файл в "www2"
- если не найден, перенаправить на «www» (который действительно содержит файл).
Причина: пользователь пытался прочитать файл перед ежечасной rsync.
Это работает:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)$ https://www.example.com/$1 [NC,QSA]
Но поскольку он зеркальный (включая .htaccess), он вызывает цикл, если пользователь пытается прочитать удаленный файл из "www" (перенаправляя на себя).
Итак, я хочу создать «если» для запуска RewriteRule, только если источник (имя хоста) - www2.example.com. Если имя хоста www.example.com вернет 404. Это возможно? Спасибо.