X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> Как исправить RewriteRule?
borro
borro
Topic Starter сообщение 9.12.2013, 14:14; Ответить: borro
Сообщение #1


Здравствуйте
Пытаюсь сделать так, чтобы работало перенаправление ссылок вида "сайт/component/virtuemart/категория/товар?Itemid=0" на ссылки "сайт/категория/товар"
Вот такую строку написал в .htaccess после стандартных RewriteEngine On и RewriteBase /:
RewriteRule ^component\/virtuemart\/(.*)\?Itemid=0$ $1

такой вариант тоже ничего не меняет:
RewriteRule ^\/component\/virtuemart\/(.*)\?Itemid=0$ $1

Ноль реакции.
Обычные редиректы "Redirect 301 ..." работают.
Привожу на всякий случай .htaccess:
Развернуть/Свернуть
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^сайт.su
RewriteRule ^(.*)$ http://www.сайт.su/$1 [R=301,L]
RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR]
RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
RewriteRule .* index.php [F]
RewriteBase /
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{REQUEST_URI} !^/index\.php
RewriteCond %{REQUEST_URI} /component/|(/[^.]*|\.(php|html?|feed|pdf|vcf|raw))$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^(.+)/$
RewriteRule ^(.+)/$ /$1 [R=301,L]
RewriteRule ^\/component\/virtuemart\/(.*)\?Itemid=0$ $1
<IfModule mod_headers.c>
   Header set Cache-Control "no-store, no-cache"
</IfModule>

<IfModule mod_expires.c>
   ExpiresActive On
   ExpiresDefault "now"
</IfModule>
Redirect 301 /index.php/magnity/magnit-anapa-detail http://сайт/component/virtuemart/magnity/magnit-anapa-detail
Redirect 301 /index.php/catalog/znachki/georgij-znachok-detail http://сайт/component/virtuemart/religioznaya-tematika/znachki-religioznye/znachok-georgij-pobedonosets-detail
Redirect 301 /index.php/catalog/statuetki/statuetka-kon-malenkij-detail http://сайт/component/virtuemart/statuetki/statuetka-loshad-malenkaya-detail?Itemid=0
Redirect 301 /component/virtuemart/statuetki/statuetka-kloun-na-naturalnom-kamne-detail?Itemid=0 http://сайт/component/virtuemart/professii/statuetka-kloun-na-naturalnom-kamne-detail?Itemid=0
Redirect 301 /component/virtuemart/znaki-kitajskogo-goroskopa/statuetka-baran-na-naturalnom-kamne-detail?Itemid=0 http://сайт/component/virtuemart/znaki-zodiaka/statuetka-baran-na-naturalnom-kamne-detail?Itemid=0
Redirect 301 /component/virtuemart/znaki-kitajskogo-goroskopa/statuetka-baran-detail?Itemid=0 http://сайт/component/virtuemart/statuetki/statuetka-baran-detail?Itemid=0
Redirect 301 /component/virtuemart/statuetki/statuetka-pitbul-detail?Itemid=0 http://сайт/component/virtuemart/statuetki/statuetka-bulterer-detail?Itemid=0
Redirect 301 /component/virtuemart/statuetki/statuetka-kloun-detail?Itemid=0 http://сайт/component/virtuemart/professii/statuetka-kloun-detail?Itemid=0
Redirect 301 /component/virtuemart/professii/kompozitsiya-bilyard-detail?Itemid=0 http://сайт/component/virtuemart/statuetki/kompozitsiya-bilyard-detail?Itemid=0

Где я допустил ошибку?
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
miketomlin
miketomlin
сообщение 12.12.2013, 18:59; Ответить: miketomlin
Сообщение #2


Как-то так:
RewriteCond %{QUERY_STRING} ^Itemid=0$ [NC]
RewriteRule ^component/virtuemart/(.*)/(.*)$ /$1/$2


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
borro
borro
Topic Starter сообщение 13.12.2013, 15:05; Ответить: borro
Сообщение #3


Благодарю. Почему-то не сработал вариант
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
miketomlin
miketomlin
сообщение 13.12.2013, 19:33; Ответить: miketomlin
Сообщение #4


Попробуйте убрать условие (строка с RewriteCond). Само правило работает?

Так будет правильнее:
RewriteRule ^component/virtuemart/([^/]*)/([^/]*)/?$ /$1/$2

Я извиняюсь за то, что заставляю вас экспериментировать. Просто сам сейчас не могу проверить.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ixman
ixman
сообщение 13.12.2013, 23:13; Ответить: ixman
Сообщение #5


RewriteRule ^/component/virtuemart/([0-9a-z_-]*)/([0-9a-z_-]*)$ /component/virtuemart/$1/$2?Itemid=0 [L,QSA]


попробуйте но не гарантирую что сработает, так бы точно знать какие могут быть символы в категории и товар ну и Itemid всегда равен 0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
borro
borro
Topic Starter сообщение 16.12.2013, 17:37; Ответить: borro
Сообщение #6


Попробуйте убрать условие (строка с RewriteCond). Само правило работает?

Так будет правильнее:
RewriteRule ^component/virtuemart/([^/]*)/([^/]*)/?$ /$1/$2

Я извиняюсь за то, что заставляю вас экспериментировать. Просто сам сейчас не могу проверить.

Благодарю за попытку помочь. Похоже заработало, правда не пойму как именно :) сейчас буду экспериментировать
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
miketomlin
miketomlin
сообщение 17.12.2013, 12:02; Ответить: miketomlin
Сообщение #7


OK, если этот вариант работает, попробуйте добавить условие, которое я опустил (см. выше).

Просмотрел сообщения в теме, возникли сомнения... Вам какой rewrite нужен-то?
"сайт/component/virtuemart/категория/товар?Itemid=0" на ссылки "сайт/категория/товар"

Так или наоборот?


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
borro
borro
Topic Starter сообщение 18.12.2013, 16:19; Ответить: borro
Сообщение #8


OK, если этот вариант работает, попробуйте добавить условие, которое я опустил (см. выше).

Просмотрел сообщения в теме, возникли сомнения... Вам какой rewrite нужен-то?

Так или наоборот?

Именно так. Нет, что-то не работают перенаправления. Ну вот например ссылка сайт/component/virtuemart/statuetki/statuetka-soslan-na-kamne-detail?Itemid=0. Она должна стать сайт/statuetki/statuetka-soslan-na-kamne-detail
Может я не в том месте .htaccess вставляю?
Я вставляю после строки
RewriteRule ^(.+)/$ /$1 [R=301,L]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
borro
borro
Topic Starter сообщение 18.12.2013, 17:35; Ответить: borro
Сообщение #9


может у меня неверные ожидания? я ожидаю, что нажав на ссылку вида сайт/component/virtuemart/statuetki/statuetka-soslan-na-kamne-detail?Itemid=0 в браузере в адресной строке должна появиться строка сайт/statuetki/statuetka-soslan-na-kamne-detail. Может строка остаётся той же, но вывод дается со страницы с адресом сайт/statuetki/statuetka-soslan-na-kamne-detail? Я пытаюсь перенаправлениями решить проблему дублей страниц. То есть ссылки делаю правильными, а проиндексированные перенаправляю. Как мне понять, что перенаправление работает?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ixman
ixman
сообщение 18.12.2013, 18:56; Ответить: ixman
Сообщение #10


А у Вас такой вариант не получится

сайт/statuetki/statuetka-soslan-na-kamne-detail

ибо перед statuetki надо ещё что-то добавить например shop или похожее

Будет примерно так

[php]RewriteRule ^/shop/([a-z]*)/([-a-z]*)$ /component/virtuemart/$1/$2?Itemid=0 [L,QSA][/php]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Как вы бросили работу и перешли на заработок с сайтов?
7 uahomka 1567 17.3.2024, 14:54
автор: uahomka
Открытая тема (нет новых ответов) Арбитражники, как ведете учет расходов и доходов?
10 Boymaster 1468 17.3.2024, 3:22
автор: malamut
Открытая тема (нет новых ответов) Как отозвать банковский платеж фрилансеру?
26 metvekot 3655 15.3.2024, 10:42
автор: Skyworker
Горячая тема (нет новых ответов) Как вы отдыхаете от работы за компом
140 adw-kupon.ru 18368 12.3.2024, 23:28
автор: Lumex
Горячая тема (нет новых ответов) Как бездомные хранят деньги?
79 metvekot 13007 12.3.2024, 23:00
автор: Lumex


 



RSS Текстовая версия Сейчас: 19.3.2024, 6:50
Дизайн