@viktorspr

Нужна помощь с .htaccess по RewriteRule. Как добавить исключение?

Уже запарился, есть заглушка "сайт временно не работает, зайдите позже..." если по адресу находится файл unavailable/unavailable.php, она срабатывает. В любых других случаях отдает index.php.

.htaccess в корне такой. Проблема в том, что режет вообще все в директории /unavailable js, и css c jpg, отдает только чистый unavailable.php, как бы эти все расширения в исключение занести?

RewriteEngine On
RewriteBase /

RewriteCond %{DOCUMENT_ROOT}/unavailable/unavailable.php -f
RewriteRule ^.* unavailable/unavailable.php [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
  • Вопрос задан
  • 255 просмотров
Решения вопроса 1
@heartdevil
плыву как воздушный шарик
Здравствуйте.

Попробуйте так

RewriteEngine On
RewriteBase /

RewriteCond %{DOCUMENT_ROOT}/unavailable/unavailable.php -f
RewriteCond %{REQUEST_URI} !^/unavailable 
RewriteRule ^.*$ unavailable/unavailable.php [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]


Я еще встречал, что люди выбрасывают 503 ошибку и перенаправляют на заглушку.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@viktorspr Автор вопроса
Спасибо заработало!

Насчет ошибки отдаваемой в заголовке так и есть, код в заглушке

<?php
header('HTTP/1.0 503 Service Unavailable');
header('Retry-After: 3600');
?>


Теперь на заглушку хотим сделать некий лендинг, думаю выйдет неплохо...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы