Задача 1
.htaccess
применяется ко всем физическим подкаталогам независимо от виртуального хоста.
Решение 1 :
Создать www/example.com/.htaccess
, содержащий:
RewriteEngine On
Это переопределит любые правила перезаписи в каталогах более высокого уровня.
Решение 2 :
Не помещайте правила перезаписи обслуживания в .htaccess
. Вместо этого поместите их непосредственно в раздел <VirtualHost>
в файле конфигурации вашего корневого сайта.
Задача 2
Поместите условие в ваше правило на основе текущей даты, используя переменные даты . Э.Г.
RewriteCond %{TIME_YEAR}-%{TIME_MON}-%{TIME_DAY}T%{TIME_HOUR} \
2011-02-18T(09|1.|20) # 9 am to 9 pm today
Это создает строку текущей даты и часа из переменных TIME_*
, например, 2011-02-18T15
(это префикс даты в формате ISO ). Вы можете создать более длинную строку, включая минуты и секунды, если вам нужна гранулярность.
Регулярное выражение соответствует диапазону номеров от 9 до 20, поэтому оно будет соответствовать времени с 09:00:00 до 20:59:59, т.е. с 9:00 до 21:00.
Добавьте это условие рядом с двумя другими директивами RewriteCond
, и правило будет активным только в определенном временном диапазоне.