Совершенно запутался, возясь с .htaccess. Проверил несколько сообщений SO и Perplexity.ai LLM. Но все равно получаю ошибочные результаты. Попытка выполнить простое полное перенаправление хоста, но пропустить правило, если в запросе найдена подстрока «cheezit». Мне удалось распечатать переменные сервера, такие как %{REQUEST_URI}, поэтому я знаю, что они имеют ожидаемые входные значения. Другого содержимого в файле .htaccess нет.
Код: Выделить всё
# .htaccess
RewriteCond %{HTTP_HOST} ^([^.]+)\.?old-legacy-host\.com$ [NC]
RewriteCond %{REQUEST_URI} !cheezit [NC]
RewriteRule ^(.*)$ https://%1.new-awesome-host.com/$1 [R=302,L]
Когда я посещаю
https://xyz.old-legacy-host.com/cheezit/45, этот URI, как и любой другой, перенаправляет на новое имя хоста. Я не могу хоть убей понять, почему он не запускает условие исключения и не пропускает RewriteRule.
Что мне не хватает?
Подробнее здесь:
https://stackoverflow.com/questions/798 ... und-in-uri