miketomlin: Посмотрите мою статью Как сделать единую точку входа с ЧПУ? – как раз для начинающих.
Коллега, большое спасибо за статейку. Немножко разобрался.
В общем я так понял, нужно делать в индексном файле единый обработчик и, как правильно сказать, роутер, то есть подгружать нужный файл php исходя из данных, полученных в URI? За одно там же проверить, есть ли такие данные в базе и если нету, выдавать ответ отличный от 200, то есть направлять на страницу 404? 🙄
timo-71, большое вам спасибо! Прописал в htaccess ваши коды, но посему то всеравно показывает svg как страницу: http://mj2.ru/img/views.svg
EvGenius, я извиняюсь но зачем мне движок для простенького каталога веб-камер состоящего из 4 страниц и нескольких табличек в базе данных? И вообще я не любитель использовать готовые движки, модули. В них 90% не нужного и только 10% нужного. Перепиливай их потом и забудь про обновления... Максимум могу плеер какой нибудь использовать готовый.
EvGenius: делайте допустим вот все тоже самое, но чтоб скрипт этот сохранял результат отдельными файлами.
и когда надо обновить - перезапускаете регенерацию. лучше конечно не всего, а лишь части изменившейся.
Спасибо, но ни чего не понял :( Какой скрипт? Какой результат? Мне бы пример/кусок кода...
Или так, если главную без индекса оставить хотите
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:
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% нужного. Перепиливай их потом и забудь про обновления... Максимум могу плеер какой нибудь использовать готовый.
делайте допустим вот все тоже самое, но чтоб скрипт этот сохранял результат отдельными файлами.
и когда надо обновить - перезапускаете регенерацию. лучше конечно не всего, а лишь части изменившейся.
Спасибо, но ни чего не понял :( Какой скрипт? Какой результат? Мне бы пример/кусок кода...
1. Делать адресацию вида
https://wc.ru/genre/animals/
https://wc.ru/country/austria/
Этот вариант ни как не подходит. Много лишнего.
2.Направлять запросы на index.php и там разруливать их.
Не могли бы посоветовать какую нибудь статью по этой тематике, написанную доступным языком?
С ув.
Оптимизайка, большое спасибо! +
С ув.