Сообщения без ответов | Активные темы Текущее время: 09 сен 2026, 02:36



Ответить на тему  [ Сообщений: 34 ]  Страница 1, 2, 3, 4  »
Добавляем слэш в конец URL адреса 
Автор Сообщение

Зарегистрирован: 11 апр 2016, 17:13
Сообщения: 247

Всем привет!

Возникла необходимость сделать для всех 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:28
Профиль

Зарегистрирован: 11 апр 2016, 17:13
Сообщения: 247

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

Сейчас заметил, что при добавлении кода:
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, 02:57
Профиль

Зарегистрирован: 11 апр 2016, 17:13
Сообщения: 247

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

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>


18 фев 2018, 03:35
Профиль

Зарегистрирован: 11 апр 2016, 17:13
Сообщения: 247

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


20 фев 2018, 03:26
Профиль

Зарегистрирован: 11 апр 2016, 17:13
Сообщения: 247

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


21 фев 2018, 01:34
Профиль

Зарегистрирован: 11 апр 2016, 17:13
Сообщения: 247

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

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

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


16 июн 2018, 11:13
Профиль

Зарегистрирован: 30 июл 2018, 15:54
Сообщения: 27

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

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


26 янв 2019, 08:01
Профиль

Зарегистрирован: 25 фев 2016, 18:46
Сообщения: 453

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


26 янв 2019, 14:13
Профиль

Зарегистрирован: 25 фев 2016, 18:46
Сообщения: 453

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

Disallow: /*/page*.html


26 янв 2019, 14:59
Профиль

Зарегистрирован: 11 апр 2016, 17:13
Сообщения: 247

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

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

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

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


26 янв 2019, 20:38
Профиль
Показать сообщения за:  Поле сортировки  
Ответить на тему   [ Сообщений: 34 ] 

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron