|
|
|
| Не совсем хорошо догоняю рег.выражения в mod_rewrite.
Подскажите плиз, как преобразовать следующие страницы:
http://www.domen.com/index
http://www.domen.com/1
http://www.domen.com/главная
в http://www.domen.com/
через 301 редирект [L,R=301] | |
|
|
|
|
|
|
|
для: ruler
(22.08.2011 в 22:32)
| | Здесь можно обойтись без mod_rewrite, воспользовавшись директивой Redirect или RedirectPermanent (правда с русскими буквами могут быть проблемы, лучше их предварительно перекодировать)
RedirectPermanent /index /
RedirectPermanent /1 /
RedirectPermanent /главная /
|
| |
|
|
|
|
|
|
|
для: cheops
(23.08.2011 в 09:50)
| | Русские то перекодирую. А это разве 301 редирект? Мне нужно имено 301-м.
Более того перенаправление по вашему способу происходит на URL вида http://www.domen.com/?q=index, а в случае единицы на конце http://www.domen.com/?q=1
так не годится | |
|
|
|
|
|
|
|
для: Ruler
(23.08.2011 в 13:46)
| | >Русские то перекодирую. А это разве 301 редирект? Мне нужно имено 301-м.
Да, это он, можно использовать Permanent, указывая после него HTTP-код явно. | |
|
|
|
|
|
|
|
для: Ruler
(23.08.2011 в 13:46)
| | >Более того перенаправление по вашему способу происходит на URL
>вида http://www.domen.com/?q=index, а в случае единицы на конце http://www.domen.com/?q=1
>так не годится
Не очень понятно. Откуда взялся параметр, у вас URL-адреса уже преобразованы при помощи mod_rewrite? | |
|
|
|
|
|
|
|
для: cheops
(23.08.2011 в 15:48)
| | Да да, совершенно верно, уже преобразованый
# For Friendly URLs
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
|
| |
|
|
|
|
|
|
|
для: Ruler
(30.08.2011 в 20:29)
| | А какому критерию должны удовлетворять ссылки вида
http://www.domen.com/index
http://www.domen.com/1
http://www.domen.com/главная
| Это не существующие ссылки или какие-то конкретно выбранные? В самом простом случае можно перед этим правилом добавить новое, которое будет перехватывать ссылки
# For Bad URLs
RewriteCond %{REQUEST_FILENAME} ^1$
RewriteRule ^(.*)$ / [L,R]
# For Friendly URLs
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
|
| |
|
|
|