Тема: Доработка .htaccess

День добрый! Скажите пожалуйста, какие условия необходимо прописать в файл .htaccess чтобы решались две задачи:
1. Реализовать редирект со страниц без слеша на страницы со слешем (к примеру, редирект со страницы site.ru/categoria на страницу site.ru/categoria/)
2. Реализовать редирект с www на страницы без www (к примеру, редирект с www.site.ru на site.ru)

Сейчас файл .htaccess выглядит следующим образом:

#
# Monstra CMS :: php & apache settings 
#
# Set default charset utf-8
AddDefaultCharset UTF-8
# Don't show directory listings for URLs which map to a directory.
Options -Indexes
# PHP 5, Apache 1 and 2.

    php_flag magic_quotes_gpc                 off
    php_flag magic_quotes_sybase              off
    php_flag register_globals                 off

# Setting rewrite rules.

    RewriteEngine on
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php [QSA,L]

Покопавшись в "интернетах" нашел следующие решения:

Для первой задачи:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !\..+$
RewriteCond %{REQUEST_URI} !/$
RewriteRule (.*) http://www.site.ru/$1/ [R=301,L]

Для второй задачи:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.+) [NC]
RewriteRule .* http://%1/$0 [L,R=301]

Решение второй задачи заработало, но вот решение первой задачи не подошло. Помогите понять в чем причина. Заранее благодарю!

http://ZenLabs.ru - разрабатываем и продвигаем сайты. 5% скидка клиентам, которые закажут сайт на монстре!

Сайт pesterevilya

Поделиться

2

Re: Доработка .htaccess

Хотя нет, первая задача тоже не решена. Редиректит с внутренней страницы на site.ru/index.php

http://ZenLabs.ru - разрабатываем и продвигаем сайты. 5% скидка клиентам, которые закажут сайт на монстре!

Сайт pesterevilya

Поделиться

3

Re: Доработка .htaccess

Решение найдено. Кому интересно:

AddDefaultCharset UTF-8
# Don't show directory listings for URLs which map to a directory.
Options -Indexes
# PHP 5, Apache 1 and 2.

    php_flag magic_quotes_gpc                 off
    php_flag magic_quotes_sybase              off
    php_flag register_globals                 off

# Setting rewrite rules.

    RewriteEngine on 
    RewriteBase / 
    RewriteCond %{HTTP_HOST} ^www\.(.+) [NC]
    RewriteRule .* http://%1/$0 [L,R=301]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_URI} !\..+$
    RewriteCond %{REQUEST_URI} !/$
    RewriteRule (.*) /$1/ [R=301,L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php [QSA,L]
http://ZenLabs.ru - разрабатываем и продвигаем сайты. 5% скидка клиентам, которые закажут сайт на монстре!

Сайт pesterevilya

Поделиться

4

Re: Доработка .htaccess

Спасибо, что выложили.
Надо будет попробовать...
если, что возьму на вооружение.

У богатых людей - большая библиотека.
У бедных людей - большой телевизор.

Сайт Hmelex

Поделиться