 |
Добавляем слэш в конец 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 переходов с поиска и продолжает расти. С Вашим движком я как будто университет закончил и получил диплом специалиста в области программирования и СЕО. Спасибо!
|
| 16 июн 2018, 11:13 |
|
 |
|
Олег
Зарегистрирован: 30 июл 2018, 15:54 Сообщения: 27
|
Иллюзионист писал(а): Решение найдено. Всем спасибо за внимание! Поделитесь пожалуйста правильным решением!
|
| 26 янв 2019, 08:01 |
|
 |
|
MIHALICH
Зарегистрирован: 25 фев 2016, 18:46 Сообщения: 453
|
Вопрос такой, как убрать дубли page1.html через htacces?? Или их можно в роботсе запретить и все?
|
| 26 янв 2019, 14:13 |
|
 |
|
MIHALICH
Зарегистрирован: 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 |
|
|
|
Страница 1 из 4
|
[ Сообщений: 34 ] |
Кто сейчас на конференции |
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2 |
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения
|
 |