Добро пожаловать на ИТ форум!

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

Регистрация

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

Статус
Закрыто для дальнейших ответов.

hirurgees

Новичок
Регистрация
08.02.2018
Сообщения
1
Здравствуйте уважаемые гуру, пишу вам из далекого села.

Делаю сайт на чистом html. Наткнулся на такую ситуацию, при вводе в адресной строке браузера после домена и слеша различных огрызков слов и кваказябр, открывается главная страница, получается все это дубли, и только после добавления .html на конце вводимого адреса страницы срабатывает редирект на 404, если конечно же такой страницы html на сайте нет.

Вопрос такой, возможно ли парой строк описать правило в файле .htaccess, чтобы посетителю открывались только существующие страницы содержащие на конце .html, а все остальное вместе с кваказябрами после домена и слеша перебрасывало на страницу 404?

И еще такой вопрос, если не трудно, хотелось бы увидеть полностью содержание файла .htaccess в котором устраняются все дубли сайта на чистом html, перевод с www на без www и тому подобное, заранее спасибо!
 

miketomlin

Member
Регистрация
12.11.2013
Сообщения
98
На чистом 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
 
Статус
Закрыто для дальнейших ответов.
Верх Низ