301 редирект с папок на страницы

and2005
На сайте с 21.05.2005
Offline
179
613

Помогите с таким редиректом, если от возможен. Таких примеров не нашел, сам разобраться не могу, а в разделе для новичков никто не осилил.

Для всех страниц сайта:

http://www.site.ru/moi-stranici/ -->> http://www.site.ru/moi-stranici

Dim_K
На сайте с 11.07.2007
Offline
85
#1

А зачем пользователя напрягать редиректом лишним? это ж время работы сайта. лучше имхо так в файле .htaccess в корне сайта


RewriteEngine On
RewriteRule (.*)/$ $1 [QSA,L]
iren K
На сайте с 28.12.2008
Offline
222
#2

как вариант

RewriteCond %{REQUEST_URI} ^([^.]+)/$

RewriteRule ^[^.]+/$ /%1 [QSA,L]

зы. также рекомендую включить

RewriteRule ^([^/]+).html[/]$ ./index.php?page=$1 [QSA]

дабы исключить возможное включение слешей в пути к странице..как бы ))

c уважением Iren
and2005
На сайте с 21.05.2005
Offline
179
#3

Dim_K, спасибо, но почему-то не работает, может оттого, что там есть и другие правила:

#DirectoryIndex index.php index.html

#Options +FollowSymLinks

#Options -Indexes

<IfModule mod_rewrite.c>

RewriteEngine On

#RewriteBase /relative/web/path/

RewriteCond %{REQUEST_FILENAME} -f [OR]

RewriteCond %{REQUEST_FILENAME} -d

RewriteRule ^(.+) - [PT,L]

RewriteCond %{REQUEST_URI} !=/favicon.ico

RewriteRule ^(.*) index.php

RewriteCond %{HTTP:Authorization} !^$

RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]

RewriteRule (.*)/$ $1 [QSA,L]

</IfModule>

#php_value register_globals 0

Так тоже пробовал:

#DirectoryIndex index.php index.html

#Options +FollowSymLinks

#Options -Indexes

<IfModule mod_rewrite.c>

RewriteEngine On

#RewriteBase /relative/web/path/

RewriteCond %{REQUEST_FILENAME} -f [OR]

RewriteCond %{REQUEST_FILENAME} -d

RewriteRule ^(.+) - [PT,L]

RewriteCond %{REQUEST_URI} !=/favicon.ico

RewriteRule ^(.*) index.php

RewriteCond %{HTTP:Authorization} !^$

RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]

</IfModule>

RewriteEngine On

RewriteRule (.*)/$ $1 [QSA,L]

#php_value register_globals 0

and2005 добавил 05.07.2010 в 18:44

iren K, тоже спасибо, но тоже такой .htaccess не работает:

#DirectoryIndex index.php index.html

#Options +FollowSymLinks

#Options -Indexes

<IfModule mod_rewrite.c>

RewriteEngine On

#RewriteBase /relative/web/path/

RewriteCond %{REQUEST_FILENAME} -f [OR]

RewriteCond %{REQUEST_FILENAME} -d

RewriteRule ^(.+) - [PT,L]

RewriteCond %{REQUEST_URI} !=/favicon.ico

RewriteRule ^(.*) index.php

RewriteCond %{HTTP:Authorization} !^$

RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]

RewriteCond %{REQUEST_URI} ^([^.]+)/$

RewriteRule ^[^.]+/$ /%1 [QSA,L]

</IfModule>

#php_value register_globals 0

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий