jkm

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

Варианты расширений файла php,htm,html описываются регулярным выражением (php|html?)


RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.(php|html?)\ HTTP/
RewriteRule ^ http://www.site.ru/ [R=301,L]

Браузер не отправит в запросе эту часть урл, так что на стороне сервера невозможно узнать было там #info или нет.

В строке с RewriteRule если DOMAIN.ru название домена, а не часть пути к файлу, то явно не хватает http://

RewriteRule ^(.*)$ http://DOMAIN.ru/$1 [R=301,L]

/abc.php/ => /abc.php


RewriteRule ^(.*\.php)/$ /$1 [L,R=301]
Detektiv:
Ещё момент, то что нагуглил .htaccess - не работает. Даже такой
RewriteEngine on

deny from all

RewriteEngine On просто включает mod_rewrite, но т.к. нету RewriteRule и RewriteCond то и работать там нечему.

Возьмите пример из https://ru.wikipedia.org/wiki/%D0%A5%D0%BE%D1%82%D0%BB%D0%B8%D0%BD%D0%BA и адаптируйте под свои нужды.

.htaccess в папке /files/


RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(.+\.)?site2\.ru/ [NC]
RewriteRule \.txt$ - [L,F]

Убрать из шаблона \.htm

^rubrika/(.+)$

kumpor:

RewriteCond %{THE_REQUEST} ^option\=com\_content$ [NC]
RewriteRule ^index\.php$ http://site.ru/ [R=301,L]

Не работает. >:( Что не так?

Поменять %{THE_REQUEST} на %{QUERY_STRING}

Строку "option=com_content" следует искать в %{QUERY_STRING}. В переменной %{THE_REQUEST} находится полная строка запроса "GET /index.php?option=com_content HTTP/1.1", так что правило будет такое:


RewriteCond %{THE_REQUEST} ^[A-Z]{3,7}\ /index\.php\?option=com_content\ HTTP
RewriteRule ^ http://site.ru/? [R=301,L]

Или так


RewriteCond %{QUERY_STRING} ^option=com_content$
RewriteRule ^index\.php$ http://site.ru/? [R=301,L]

И ставить правило сразу после RewriteEngine on.

Hocok44:
Как думаете, живой?

Как говаривал Зигзаг Маккряк - Отличная авария, восемь с половиной по десятибалльной шкале!

Разместить выше правила с /rubrika/view-page.php


RewriteRule ^rubrika/category/page888\.htm$ /rubrika/page888.htm [R=301,L]

xn--p1ai$/

Символ $ здесь явно не к месту.


RewriteCond %{HTTP_HOST} ^domen\.ru$ [NC]
RewriteRule ^(.*)$ http://punycode.xn--p1ai/$1 [R=301,L]
Всего: 750