Elite-Board tech support
https://forum.illusionweb.ru/

Добавляем слэш в конец URL адреса
https://forum.illusionweb.ru/viewtopic.php?f=3&t=3644
Страница 1 из 4

Автор:  Д митрий [ 18 фев 2018, 02:28 ]
Заголовок сообщения:  Добавляем слэш в конец URL адреса

Всем привет!

Возникла необходимость сделать для всех URL адресов, кроме страниц .html, чтобы они оканчивались слэшем на конце.
Во первых это надо для исключения лишних дублей, а во вторых для правильной работы СЕО-модуля, над которым я сейчас работаю.

Делаю я это через .htaccess путём добавления следующих строчек:

сейчас поставил вариант попроще (вроде работает нормально)

RewriteCond %{REQUEST_URI} (.*/[^/.]+)($|\?)
RewriteRule .* %1/ [R=301,L]


либо посложнее (но тут пришлось добавить пару строк, но вроде бы тоже работает)

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.html)
RewriteCond %{REQUEST_URI} !(.xml)
RewriteCond %{REQUEST_URI} !(.jpg)
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ https://prodgoroda.ru/$1/ [L,R=301]



Проблема в том, что при добавлении этого кода перестаёт работать голосовалка (рейтинг) для компаний.
Пример: https://prodgoroda.ru/shops/156-OOO-ODA/
При попытке проголосовать пишет:

при первом варианте кода:
"Ошибка при отправке формы"

при втором варианте кода:
"Вы не все оценили".

Как побороть этот недуг?

Автор:  Д митрий [ 18 фев 2018, 02:57 ]
Заголовок сообщения:  Re: Добавляем слэш в конец URL адреса

Дополнение...

Сейчас заметил, что при добавлении кода:
RewriteCond %{REQUEST_URI} (.*/[^/.]+)($|\?)
RewriteRule .* %1/ [R=301,L]


на некоторых страницах зелёный замочек (защищённого соединения) становится жёлтым.

При втором варианте такого не замечаю.

Вообще нет ли конфликта этих двух правил в коде:

AddDefaultCharset UTF-8
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.*)$
RewriteRule ^(.*)$ http://%1/$1 [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.html)
RewriteCond %{REQUEST_URI} !(.xml)
RewriteCond %{REQUEST_URI} !(.jpg)
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ https://prodgoroda.ru/$1/ [L,R=301]


и надо ли изменить http на https в 4 строчке?

Автор:  Д митрий [ 18 фев 2018, 03:35 ]
Заголовок сообщения:  Re: Добавляем слэш в конец URL адреса

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

AddDefaultCharset UTF-8

RewriteEngine On

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

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.html)
RewriteCond %{REQUEST_URI} !(.xml)
RewriteCond %{REQUEST_URI} !(.jpg)
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ https://prodgoroda.ru/$1/ [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?%{QUERY_STRING} [L]
RewriteCond %{HTTP_USER_AGENT} (DomainCrawler|ltx71|AhrefsBot|SolomonoBot|SearchBot|MJ12bot|DotBot|CCBot|Site-Shot|TOBBOT|trendictionbot|statdom.ru|seranking_audit_bot) [NC]
RewriteRule .* - [F,L]

#<IfModule mod_security.c>
#SecFilterEngine Off
#SecFilterScanPOST Off
#</IfModule>
#<IfModule security_module>
#SecFilterEngine Off
#SecFilterScanPOST Off
#</IfModule>
#<IfModule security2_module>
#SecFilterEngine Off
#SecFilterScanPOST Off
#</IfModule>

## USER IP BANNING
<Limit GET POST>
order allow,deny
deny from 62.122.182.106
deny from 178.127.147.228
deny from 178.127.215.27
deny from 80.252.154.233
deny from 185.6.8.9
allow from all
</Limit>

Автор:  Д митрий [ 20 фев 2018, 03:26 ]
Заголовок сообщения:  Re: Добавляем слэш в конец URL адреса

Никто не сталкивался с таким?
Может кто реализовал добавление слэша путем РНР?
Если не найдётся решение, то придётся долго и мучительно карпеть над СЕО-модулем

Автор:  Д митрий [ 21 фев 2018, 01:34 ]
Заголовок сообщения:  Re: Добавляем слэш в конец URL адреса

Решение найдено.
Всем спасибо за внимание!

Автор:  Д митрий [ 16 июн 2018, 11:13 ]
Заголовок сообщения:  Re: Добавляем слэш в конец URL адреса

Ну вот, избавился от дублей со слэшем и без, от дублей page1.html.
От нескольких багов движка.
Ещё произвёл кое какую хитрость в СЕО.

И наконец то Яндекс снял все санкции (или может как то это по другому называется) и трафик с 0 подскочил до 250 переходов с поиска и продолжает расти.

С Вашим движком я как будто университет закончил и получил диплом специалиста в области программирования и СЕО. :roll:
Спасибо!

Автор:  Олег [ 26 янв 2019, 08:01 ]
Заголовок сообщения:  Re: Добавляем слэш в конец URL адреса

Иллюзионист писал(а):
Решение найдено.
Всем спасибо за внимание!

Поделитесь пожалуйста правильным решением!

Автор:  MIHALICH [ 26 янв 2019, 14:13 ]
Заголовок сообщения:  Re: Добавляем слэш в конец URL адреса

Вопрос такой, как убрать дубли page1.html через htacces?? Или их можно в роботсе запретить и все?

Автор:  MIHALICH [ 26 янв 2019, 14:59 ]
Заголовок сообщения:  Re: Добавляем слэш в конец URL адреса

Если просто запретить индекс всех страниц с page.html, в робот тхт добавить надо вот такую строку

Disallow: /*/page*.html

Автор:  Д митрий [ 26 янв 2019, 20:38 ]
Заголовок сообщения:  Re: Добавляем слэш в конец URL адреса

Краткая суть поста – чем меньше файл robots.txt тем лучше и качественнее сайт, и это относится вообще к любому движку или сайту.

Я вам еще раз расскажу, почему и для чего нужен файл robots.txt и директивы в нем, а так же почему меньше директив это показатель качества.

Знаете что такое идеальный сайт? Это сайт, каждая страница которого несет пользу для посетителя и эту страницу не стыдно показать поисковику, потому что она ему понравится и будет высоко ранжироваться.

А для чего придумали robots.txt? Для того чтобы указывать поисковику какие страницы посещать и индексировать можно, а какие нельзя. Закрывая от индексации какие-то страницы (или даже разделы) вы тем самым признаете, что эти страницы некачественные или ненужные по различным причинам. Чаще всего запрет используется для исключения дублей страниц и технической информации. К сожалению, реальность такова, что сегодня 99% сайтов имеющих файл роботс закрывают с его помощью как раз такие страницы.

Страница 1 из 4 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/