RewriteEngine On RewriteCond %{QUERY_STRING} =o=652&e=0 RewriteRule ^$ /?o=757&e=0 [R=301,L]
Это может не работать, если домен в запросе уже без точки.
Такое возможно если запрос проксирует другой сервер, например nginx.
Сейчас пробывал на nginx/1.7.9
proxy_set_header Host $host;
Точка в конце пропадает.
А если
proxy_set_header Host $http_host;
Точка в конце сохраняется.
http://wiki.nginx.org/HttpProxyModule#proxy_set_header
Для проверки можно создать простой скрипт
<?php var_dump($_SERVER['HTTP_HOST']);
А если немного поправить удалив начальный слеш и знак вопроса после html
RewriteCond %{QUERY_STRING} ^page_id=([0-9]+)$ RewriteRule ^ _page_id=%1.html [L]
Или использовать %{THE_REQUEST}
RewriteCond %{THE_REQUEST} ^[A-Z]{3,7}\ /\?(page_id=[0-9]+)\ HTTP RewriteRule ^ _%1.html [L]
Например для консоли виндовс
for /f "delims=" %a in (words1.txt) do for /f "delims=" %b in (words2.txt) do echo %a %b >> results.txt
Параметры запроса следует искать в %{QUERY_STRING}
RewriteEngine On RewriteCond %{QUERY_STRING} =abc=1 RewriteRule ^direct\.php$ http://site1.com/? [R=301,L]
Ну или так
RewriteCond %{QUERY_STRING} ^abc=(\d+)$ RewriteCond %1;;1=site1.com;2=blabla.com;3=lol.net ^(\d+);.*;\1=([^;]+) RewriteRule ^direct\.php$ http://%2/? [R=301,L]
RewriteEngine On RewriteCond %{QUERY_STRING} . RewriteCond %{REQUEST_URI} !^/administrator/ RewriteRule .* /$0? [R=301,L]
Где-то теряется закрывающий тег и в результате фрагмент
</div><!-- center /-->
оказывается закрывающим для <div class="blog">, а не для <div id="center">. После этого и правый блок оказывается внутри <div id="center">.
http://www.cyberforum.ru/post6642411.html
Такое поведение бывает, если правила для редиректа ставить в самый конец, после конструкций вроде RewriteRule .* index.php
Ставьте правила в самом верху, сразу после RewriteEngine On
И на всякий случай, перед очередной проверкой сбрасывайте кэш браузера.
Потому что перед выполнением редиректа необходимо проверять какой домен запрашивался.
У директивы RedirectMatch нет механизмов для проверки какой домен был запрошен.
У RewriteRule для этого есть RewriteCond %{HTTP_HOST}
RewriteCond %{HTTP_HOST} !^www\.site.com$ [NC] RewriteRule (.*) http://www.site.com/$1 [R=301,L]
Для кода 403 необходим флаг [F] в строке RewriteRule
В шаблоне присутствует маркер начала строки ^ может ищете фрагмент в середине строки? Тогда его стоит убрать оставив только "good-agent"