0 Пользователей и 1 Гость просматривают эту тему.
  • 7 Ответов
  • 8894 Просмотров
*

si@m

  • Захожу иногда
  • 162
  • 2 / 0
Есть необходимость убрать со всех урлов завершающий слэш (за исключением конечно главной страницы ;D), у меня на сайте включен родной SEF а в .htacsess уже прописан редирект с www на без www вот таким образом:
Код
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
полностью .htacsess выглядит так:
Код
#php_flag register_globals 0

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php [F,L]

RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]
RewriteRule (.*) index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]


php_value disable_functions \"popen,exec,system,passthru,proc_open,shell_exec\"
я добавляю строчку чтобы избавится от слэша:
RewriteRule ^(.*)\/$ /$1 [R=301,L]
в итоге получается так
Код
#php_flag register_globals 0

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
RewriteRule ^(.*)\/$ /$1 [R=301,L]
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php [F,L]

RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]
RewriteRule (.*) index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]


php_value disable_functions \"popen,exec,system,passthru,proc_open,shell_exec\"
На сайте все вроде работает как надо от "/" избавился но после этого не могу войти в админку на странице site.ru/administrator циклическая переадресация. Подскажите пожалуйста кто знает в чем ошибка.
« Последнее редактирование: 20.01.2012, 10:21:00 от userxp »
*

oriol

  • Завсегдатай
  • 1042
  • 100 / 4
Re: Не могу разобраться с .htacsess
« Ответ #1 : 20.01.2012, 10:16:01 »
Добавить завершающий слэш
Код
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*[^/])$ $1/ [L,R=301]

Удалить завершающий слэш
Код
RewriteBase /
RewriteCond %{HTTP_HOST} (.*)
RewriteCond %{REQUEST_URI} /$ [NC]
RewriteRule ^(.*)(/)$ $1 [L,R=301]
*

userxp

  • Живу я здесь
  • 2019
  • 403 / 6
  • Злой и ужасный бармалей
и когда вы уже научитесь правильно название темы формулировать
 :(
Как правильно задавать вопрос службе технической поддержки  yes!
SGA CM 7.2.0 RC0 KANG Build GWK74 + s95allinonescript + CWM 5.0.2.6 + Modem XWKT3
*

si@m

  • Захожу иногда
  • 162
  • 2 / 0
oriol попробовал то что вы посоветовали суть та же в админку не пускает.
userxp исправлюсь ^-^
*

oriol

  • Завсегдатай
  • 1042
  • 100 / 4
Я вставил твой первый htaccess
Спойлер
[свернуть]
к себе и проверил, все работает отлично все страницы выдаются без слеша а при добавлении слеша отдают 404 страницу.
Так что вы мозги не выносите
Проверь в настройках своего сайта mod_Rewrite включен (даже не знаю в чем у тебя проблема)

а страницы с которыми так борятся    site.ru/index.php     site.ru/index.php/  дублями не являются поисковики их склеивают
можешь зайти и проверить


########## Begin - File exection order, by Komra.de
DirectoryIndex index.php index.html
########## End - File exection order

########## Begin - No directory listings
# !----- это исправь
IndexIgnore *
Options +FollowSymLinks All -Indexes   
########## End - No directory listings
« Последнее редактирование: 20.01.2012, 13:38:01 от oriol »
*

si@m

  • Захожу иногда
  • 162
  • 2 / 0
Мои настройки:
Включить SEO Да
Использовать mod_rewrite Да 
Добавить суффикс к URL Нет
Извините но мозг ни кому и не собирался выносить, зачем мне это?
*

oriol

  • Завсегдатай
  • 1042
  • 100 / 4
попробуй добавить что выше написано  
у меня тоже родной SEF и работает все нормально
единственное у меня  Добавить суффикс к URL да
« Последнее редактирование: 20.01.2012, 15:02:25 от oriol »
*

Uman

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
Убрал слэши по этой инструкции и K2-профиль начал глючить. На странице http://mysite.ru/component/users  , при вводе логина и пароля, выводит ошибку "Неверный параметр".

В чём может быть проблема, кто знает?
Стоит Joomla 2.5 + K2 последней версии.
« Последнее редактирование: 26.09.2012, 00:53:48 от Uman »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как убрать пункт меню «Главная»?

Автор wdesign

Ответов: 17
Просмотров: 23495
Последний ответ 20.09.2017, 21:38:35
от WiseEagle
Как убрать дубли страниц category_id?

Автор kirillich_s

Ответов: 4
Просмотров: 1691
Последний ответ 29.11.2016, 09:35:22
от kirillich_s
Как сделать редирект у всех урезанных url?

Автор NlCK

Ответов: 1
Просмотров: 1332
Последний ответ 03.10.2016, 22:35:23
от SeBun
Не могу избавиться от урлов с параметрами

Автор wings_fury

Ответов: 4
Просмотров: 1225
Последний ответ 29.10.2015, 04:05:42
от Филипп Сорокин
Как убрать мобильную версию?

Автор Timerlan

Ответов: 0
Просмотров: 1335
Последний ответ 15.05.2015, 11:40:24
от Timerlan