jkm

Рейтинг
120
Регистрация
20.02.2014

По поводу возможностей mod_rewrite.

Если заглянуть в доку, то в списке доступных переменных можно увидеть TIME_DAY, TIME_HOUR, TIME_MIN, TIME_SEC.

Условием можно проверять минуты в TIME_MIN и каждый час блокировать 14-19, 34-39, 54-59.


RewriteCond %{TIME_MIN} [135][4-9]
pcmobi:
нужно домен/page100.html --> субдомен/page100.html и так до 8414 страницы


RewriteCond $1 >99
RewriteCond $1 <8415
RewriteRule ^page(\d+)\.html$ http://sub.domain.com/$0 [R=301,L]

RewriteRule ^page(?:[1-8]\d\d\d?|9\d\d)$ http://sub.domain.com/ [R=301,L]

RewriteCond $1 >99

RewriteCond $1 <8001
RewriteRule ^page(\d+)$ http://sub.domain.com/ [R=301,L]

Судя по тому, как редиректит /katalog-tovarov/lol на /katalog/lol можно предположить, что в файле .htaccess есть такая конструкция


Redirect 301 /katalog-tovarov/ /katalog/

которая срабатывает раньше чем правило для /katalog-tovarov/wims8/maska-dlya-lica-wims8-grape-daily-mask.

Можно перенести Redirect 301 /katalog-tovarov/ /katalog/ в самый конец файла.


RewriteCond %{THE_REQUEST} " /\?module=cat&action=item&id=[^ &]*&ref="
RewriteRule ^ /? [R=301,L]


RewriteCond %{THE_REQUEST} &ref=
RewriteRule ^ /? [R=301,L]


RewriteCond %{THE_REQUEST} " /\?module=cat&action=item&id="
RewriteRule ^ /? [R=301,L]

Символы = _ # можно не экранировать.

Строка считается комментарием только если она начинается с #, т.е. внутри шаблона можно спокойно использовать.

Об том и речь. Браузер не отправит эту часть #/sort=p.sort_order/order=ASC/limit=15/page=1

Сервер получит только /applicator-lyapko.

Там подвох в том, что браузер не передаёт на сервер всё, что идёт после знака #.

Для адресов начинающихся на /a/


RewriteRule ^a(/[^/]+)+$ $1 [R=301,L]

Всё, кроме существующих файлов.


RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule /[^/]+$ $0 [R=301,L]
Всего: 750