RewriteCond %{QUERY_STRING} ^.+ RewriteRule ^$ /index.php [R=301,L,QSA]
Прописал вот этот код, с одной проблемой справился, другую нажил. Теперь в поиск попало тысячи страниц типа:
http://site.ru/index.php?ch=4678
У меня есть страницы http://site.ru/channel.php?ch=4678 но не http://site.ru/index.php?ch=4678
Помогите пожалуйста переписать редирект так, что бы при заходе по ссылке http://site.ru/?co=8 кидало на http://site.ru/index.php?co=8 , а при заходе по ссылке http://site.ru/?ch=4678 кидало на http://site.ru/channel.php?ch=4678
За ранее спасибо!
:(:(:(
Коллеги! Почему у меня не работают вот эти коды в .htaccess:
################################################################################ Убираем повторяющиеся слеши (/) в URL ################################################################################RewriteCond %{REQUEST_URI} ^(.*)/{2,}(.*)$ # Проверяем, повторяется ли слеш (//) более двух раз.RewriteRule . %1/%2 [R=301,L] # Исключаем все лишние слеши.
RewriteCond %{THE_REQUEST} \s/+(.*?)/{2,}([^\s]*)RewriteRule ^ %1/%2 [R=301,L,NE]
RewriteCond %{THE_REQUEST} //# Проверяем, повторяется ли слеш (//) более двух раз.RewriteRule .* /$0 [R=301,L]# Исключаем все лишние слеши.
/ru/forum/comment/14483546
Всё перепробовал нагугленное, слеши на месте остаются:
😕
Я пишу роутер в данный момент. Вернее дописываю.
У меня хостинг, там апач. Или я чего то ни так понял?
miketomlin, коллега, а как вы сделали так, что лишние слэши удаляются из адресной строки? Не совсем понятна для меня статья ваша :( С ув.
Оно:
if (strcmp($_SERVER['REQUEST_URI'],$p=strtolower(preg_replace('#//+#','/',$_SERVER['REQUEST_URI'])))) { header('Location: http'.(empty($_SERVER['HTTPS'])?'://':'s://').$_SERVER['HTTP_HOST'].$p,true,301); exit; }
? С ув.
Коллеги, подскажите еще пожалуйста, как грамотно проверить, нет ли в URL двух и более слэшей подряд:
https://site.ru/russia// или https://site.ru////russia/
За ранее спасибо. С ув.
miketomlin, большое вам спасибо! Жаль не могу плюсануть.
Нравится мне это дело!
С ув.
Коллега, большое спасибо за статейку. Немножко разобрался.
В общем я так понял, нужно делать в индексном файле единый обработчик и, как правильно сказать, роутер, то есть подгружать нужный файл php исходя из данных, полученных в URI? За одно там же проверить, есть ли такие данные в базе и если нету, выдавать ответ отличный от 200, то есть направлять на страницу 404? 🙄
timo-71, большое вам спасибо! Прописал в htaccess ваши коды, но посему то всеравно показывает svg как страницу: http://mj2.ru/img/views.svg
EvGenius, я извиняюсь но зачем мне движок для простенького каталога веб-камер состоящего из 4 страниц и нескольких табличек в базе данных? И вообще я не любитель использовать готовые движки, модули. В них 90% не нужного и только 10% нужного. Перепиливай их потом и забудь про обновления... Максимум могу плеер какой нибудь использовать готовый.
Спасибо, но ни чего не понял :( Какой скрипт? Какой результат? Мне бы пример/кусок кода...
Этот вариант ни как не подходит. Много лишнего.
Не могли бы посоветовать какую нибудь статью по этой тематике, написанную доступным языком?
Оптимизайка, большое спасибо! +