AronTito
@AronTito
разработчик-любитель web приложений и сайтов.

Как настроить 301 редирект без ущерба файлам?

Всем привет, нужна попщь
Вот простой 301 редирект который работает отлично на сайте, он убирает слеш в конце url
из site.com/news/ делает site/news
все норм. НО!
Есть в корне сайта такой файл как sitemap.xml и к нему через адресную строку, не могу попасть. Выдает ошибку
вот сам htaccess
RewriteCond %{HTTP_HOST} (.*)
RewriteCond %{REQUEST_URI} /$ [NC]
RewriteRule ^(.*)(/)$ $1 [L,R=301]

Почему так происходит?
  • Вопрос задан
  • 94 просмотра
Пригласить эксперта
Ответы на вопрос 1
shambler81
@shambler81 Куратор тега htaccess
#### Убираем повторяющиеся слеши (/) в URL                              ####
############################################################################
RewriteCond %{THE_REQUEST} //
   # Проверяем, повторяется ли слеш (//) более двух раз.
RewriteRule .* /$0 [R=301,L]
   # Исключаем все лишние слеши.

############################################################################
#### Убираем слеши в конце URL для статических файлов (содержит точку)  ####
############################################################################
RewriteCond %{REQUEST_URI} \..+$  
   # Если файл содержит точку.
RewriteCond %{REQUEST_FILENAME} !-d   
   # И это не директория.
RewriteCond %{REQUEST_FILENAME} -f
   # Является файлом.
RewriteCond %{REQUEST_URI} ^(.+)/$      
   # И в конце URL есть слеш.
RewriteRule ^(.+)/$ /$1 [R=301,L]     
   # Исключить слеш.

############################################################################
#### Добавляем слеш(/), если его нет, и это не файл.                    ####
############################################################################
RewriteCond %{REQUEST_URI} !(.*)/$
   # Если слеша в конце нет.
RewriteCond %{REQUEST_FILENAME} !-f
   # Не является файлом.
RewriteCond %{REQUEST_URI} !\..+$
   # В URL нет точки (файл).
RewriteRule ^(.*)$ $1/ [L,R=301]
   # Добавляем слеш в конце.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы