RewriteRule ^(.*)/$ /$1.php [NC,L]
RewriteCond %{QUERY_STRING} add=([0-9]+)$
RewriteRule ^cart\.php$ index.php?type=cart [QSA,L]
RewriteRule ^cart\.php$ index.php?type=cart [NC,L]
ещё вариант
или
RewriteRule cart\.php index.php?%{QUERY_STRING}&type=cart [NC,L]
в последних двух случаях, возможно, придётся в скрипте фильтровать $_GET['add'] на наличие только цифр.
да, нормально.
RewriteCond %{QUERY_STRING} p=(.*) #тут на выбор одна из след. строк: #в хедер выдаст 410 – страница больше не существует RewriteRule ^ - [G] #в хедер выдаст 403 – доступ запрещён RewriteRule ^ - [F] #в хедер выдаст 404 – нет такой страницы RewriteRule ^ - [R=404,L]
RewriteEngine on RewriteRule ^.htaccess$ - [F] RewriteCond %{HTTP_HOST} ^(www.)*old.com$ RewriteRule ^(.*)$ http://new.com/$1 [R=301,L]
в начало файла
switch($_SERVER['REMOTE_ADDR']) { case '217.66.26.85': case '217.66.26.86': case '217.66.26.87': header('Location: http://site.ru/page.html'); exit(); break; }
из последнего блока можно убрать дублирование
RewriteEngine on
RewriteRule ^.htaccess$ - [F]
проверил ещё раз, включая полный htaccess – работает на локалке и сервере,
может не включён mod_rewrite ?
протестируйте, в htaccess закомментируйте всё или удалите на время, внесите
RewriteEngine on RewriteRule ^.htaccess$ - [F] RewriteRule ^(.*)(\/|\.html)$ index.php?page=$1 [QSA,L]
в index.php в самое начало файла после <?php или <? внесите
if($_SERVER['REQUEST_URI']!='/') { if(isset($_GET['page'])) { echo 'page: '.$_GET['page'].'.html<br>'; echo 'mod_rewrite OK<br>'; } else { echo 'no mod_rewrite'; } } else { echo 'index<br><a href="/'.mt_rand(10,100).'.html">random url</a>'; } exit();
посмотрите, что выйдет.
RewriteRule ^([A-Za-z0-9-]+)/([0-9]+)\.html?$ z.php?page=$1&offset=$2 [L]
MBo добавил 21.07.2010 в 12:25
вместо z.php index.php :)
RewriteEngine on RewriteRule ^.htaccess$ - [F] RewriteRule ^(.*)/zadvizhki/st20/30s41ng/$ /$1/zadvizhk/stalny/2/ [L,R=301] RewriteRule ^(.*)/zadvizhki/$ /$1/zadvizhk/ [L,R=301]
проверено, да и сами можете проверить заголовки на корректность
или в firefox с плагином, типа,
livehttpheaders
https://addons.mozilla.org/en-US/firefox/addon/3829/
или на сервисах, типа
http://www.rexswain.com/httpview.html
кривой урл чекните и увидите, что вместо 301 идёт 302.