Перейти к содержимому

Фотография
- - - - -

устранение дублей страницы с помощью .htaccess


  • Вы не можете создать новую тему
  • Закрытая тема Тема закрыта
В теме одно сообщение

#1 hirurgees

hirurgees

    Прохожий

    Топикстартер
  • Новичок
  • 0
    1 сообщ.

Отправлено 08 Февраль 2018 в 13:24

Здравствуйте уважаемые гуру, пишу вам из далекого села.
 
Делаю сайт на чистом html. Наткнулся на такую ситуацию, при вводе в адресной строке браузера после домена и слеша различных огрызков слов и кваказябр, открывается главная страница, получается все это дубли, и только после добавления .html на конце вводимого адреса страницы срабатывает редирект на 404, если конечно же такой страницы html на сайте нет.
 
Вопрос такой, возможно ли парой строк описать правило в файле .htaccess, чтобы посетителю открывались только существующие страницы содержащие на конце .html, а все остальное вместе с кваказябрами после домена и слеша перебрасывало на страницу 404? 
 
И еще такой вопрос, если не трудно, хотелось бы увидеть полностью содержание файла .htaccess в котором устраняются все дубли сайта на чистом html, перевод с www на без www и тому подобное, заранее спасибо!

  • 0

Спонсор

#2 miketomlin

miketomlin

    Прохожий

  • Участник
  • 14
    67 сообщ.

Отправлено 13 Февраль 2018 в 19:59

На чистом html сейчас сайты практически никто не делает.

 

Но можете попробовать позатыкать все дырки. Чтобы хотя бы уровень вложенности у дублей не менялся (это особенно важно, если вы используете относительные ссылки), можно начать с AcceptPathInfo Off. Закрывать запросы с непустой строкой параметров, а еще лучше с вопр. знаком в конце пути. С трэйлинг слешами тоже нужно обязательно разобраться. Для динамических сайтов с единой точкой входа достаточно примерно такого .htaccess (может, что-нибудь почерпнете для себя):

<IfModule mod_dir.c>
DirectorySlash Off
</IfModule>

RewriteEngine On

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

RewriteRule (.*)/+$ /$1 [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^.* /index.php

При этом часть дублей может также закрываться программно внутри единой точки входа, а для статика (картинок и т.п.), запросы к которому не попадают в единую точку входа, дубли не столь критичны, как для страниц с контентом.

 

Для https/www можно делать редирект отдельно, чтобы не тратить ресурсы основного сайта.


P.S. Для статика еще существует проблема дублей узловых/индексных страниц, например у главной (/) наверняка будет дубль вроде /index.html, что невозможно при использовании динамика с единой точкой, если разраб вменяемый и не определил специально подобный «дубль», например как тут: http://g09.ru/index.html


  • 1



Похожие темы Свернуть

Статистика

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 скрытых пользователей