|
|
|
| Как прописать правило в .htaccess
чтобы ,если в конце url нет слэша или расширения ( .html ) добавлялся завершающий слэш
Есть ли красивое решение ? | |
|
|
|
|
|
|
|
для: Косорылый
(14.01.2011 в 16:20)
| | Хм... вообще-то Apache это должен делать самостоятельно. | |
|
|
|
|
|
|
|
|
для: Косорылый
(14.01.2011 в 16:20)
| | <IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
</IfModule> | |
|
|
|
|
|
|
|
для: psychomc
(14.01.2011 в 16:36)
| | Это условия ,а где RewriteRule | |
|
|
|
|
|
|
|
для: Косорылый
(14.01.2011 в 16:52)
| | неужели сложно создать .htaccess, вставить в него эти строки и проверить как это работает?
глупые вопросы отпадут сразу | |
|
|
|
|
|
|
|
для: Косорылый
(14.01.2011 в 16:52)
| | Решено:
# Добавляем слеш в конце пути
RewriteCond %{REQUEST_URI} (.*/[^/.]+)($|\?)
RewriteRule .* %1/ [R=301,L,QSA]
|
если без слэша ,то заголовки 301 _подставили слэш_200_уже со слэшем
осталось определится какой редирект надо:
302 временно перемещён [R] или
301 постоянно [R=301]
Наверно правильнее 301 для склейки одинаковых ссылок со слэшем и без
Кто как думает? | |
|
|
|
|
|
|
|
для: Косорылый
(15.01.2011 в 16:07)
| | конечно 301, чтоб поисковики не пытались индексировать копии без слешей | |
|
|
|