Как сделать редирект по маске?

12
R5
На сайте с 16.04.2018
Offline
8
1292

Добрый день!

После проблем с плагином кэширования в поиск попали адреса такого типа:

https://site.ru/https:/site.ru/rubrika/

https://site.ru/https:/site.ru/rubrika/page/2/

Подскажите как сделать редирект на нормальный адресс или 404.

Возможно ли сделать такой редирект по маске на случай появления подобных ссылок ?

Заранее спасибо?

LEOnidUKG
На сайте с 25.11.2006
Offline
1723
#1

А что они у вас не вышибают в 404 ошибку?

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/
R5
На сайте с 16.04.2018
Offline
8
#2
LEOnidUKG:
А что они у вас не вышибают в 404 ошибку?

К сожалению нет.

LEOnidUKG
На сайте с 25.11.2006
Offline
1723
#3

а открывается страница нормально? Что за CMS?

fliger
На сайте с 17.09.2015
Offline
106
#4

RewriteCond %{THE_REQUEST} ^(?>[A-Z]{3,9})\ /https://site\.ru/(.*)\ HTTPS/

RewriteRule ^.*$ https://site\.ru/%1 [R=301,L]

R5
На сайте с 16.04.2018
Offline
8
#5
LEOnidUKG:
а открывается страница нормально? Что за CMS?

Да открывается нормально. Вордпресс

---------- Добавлено 16.05.2018 в 12:40 ----------

fliger:
RewriteCond %{THE_REQUEST} ^(?>[A-Z]{3,9})\ /https://site\.ru/(.*)\ HTTPS/
RewriteRule ^.*$ https://site\.ru/%1 [R=301,L]

Не работает

LEOnidUKG
На сайте с 25.11.2006
Offline
1723
#6
RS485:

Не работает

Вы весь файл то покажите и куда вы именно вставили это.

SeVlad
На сайте с 03.11.2008
Offline
1609
#7
RS485:
Вордпресс

С этого и надо начинать.

Вставляй показанные правила ДО блока ВП.

Делаю хорошие сайты хорошим людям. Предпочтение коммерческим направлениям. Связь со мной через http://wp.me/P3YHjQ-3.
R5
На сайте с 16.04.2018
Offline
8
#8
SeVlad:
С этого и надо начинать.
Вставляй показанные правила ДО блока ВП.

Мой .htaccess

RewriteEngine On

RewriteCond %{SERVER_PORT} !^443$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

# Редирект с index.php на главную
RewriteEngine On
RewriteCond %{THE_REQUEST} ^.*/index\.php
RewriteRule ^(.*)index.php$ /$1 [R=301,L]

# редирект на папки со слешем на конце
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !\..{1,10}$
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*)$ https://site.ru/$1/ [L,R=301]

# ВРЕМЕННО НАСТРОИЛ ПЕРЕАДРЕСАЦИЮ=========

RewriteCond %{REQUEST_URI} ^/https:/site.ru/rubrika0/$
RewriteRule ^.*$ https://site.ru/rubrika0/? [R=301,L]

RewriteCond %{REQUEST_URI} ^/https:/site.ru/rubrika0/page/2/$
RewriteRule ^.*$ https://site.ru/rubrika0/page/2/? [R=301,L]

RewriteCond %{REQUEST_URI} ^/https:/site.ru/rubrika1/$
RewriteRule ^.*$ https://site.ru/rubrika1/? [R=301,L]

RewriteCond %{REQUEST_URI} ^/https:/site.ru/rubrika1/page/2/$
RewriteRule ^.*$ https://site.ru/rubrika1/page/2/? [R=301,L]

RewriteCond %{REQUEST_URI} ^/https:/site.ru/rubrika1/page/3/$
RewriteRule ^.*$ https://site.ru/rubrika1/page/3/? [R=301,L]

RewriteCond %{REQUEST_URI} ^/https:/site.ru/rubrika1/page/4/$
RewriteRule ^.*$ https://site.ru/rubrika1/page/4/? [R=301,L]

RewriteCond %{REQUEST_URI} ^/https:/site.ru/rubrika1/page/5/$
RewriteRule ^.*$ https://site.ru/rubrika1/page/5/? [R=301,L]

RewriteCond %{REQUEST_URI} ^/https:/site.ru/rubrika1/page/6/$
RewriteRule ^.*$ https://site.ru/rubrika1/page/6/? [R=301,L]

RewriteCond %{REQUEST_URI} ^/https:/site.ru/rubrika1/page/7/$
RewriteRule ^.*$ https://site.ru/rubrika1/page/7/? [R=301,L]

RewriteCond %{REQUEST_URI} ^/https:/site.ru/rubrika1/page/8/$
RewriteRule ^.*$ https://site.ru/rubrika1/page/8/? [R=301,L]

RewriteCond %{REQUEST_URI} ^/https:/site.ru/rubrika0y-dlya-sporta/$
RewriteRule ^.*$ https://site.ru/rubrika0y-dlya-sporta/? [R=301,L]

RewriteCond %{REQUEST_URI} ^/https:/site.ru/rubrika2/$
RewriteRule ^.*$ https://site.ru/rubrika2/? [R=301,L]

RewriteCond %{REQUEST_URI} ^/https:/site.ru/rubrika2/page/2/$
RewriteRule ^.*$ https://site.ru/rubrika2/page/2/? [R=301,L]

RewriteCond %{REQUEST_URI} ^/https:/site.ru/rubrika0y-lechat/$
RewriteRule ^.*$ https://site.ru/rubrika3/? [R=301,L]
# =======================================================================
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress
# BEGIN WPSOS htaccess plugin
# Stop Apache from serving .ht* files
<Files ~ "^\.ht">
Order allow,deny
Deny from all
</Files>

# Protect wp-login
<Files wp-login.php>
AuthUserFile /data/www/site.ru/.htpasswd
AuthType basic
AuthName "Restricted"
require valid-user
ErrorDocument 401 "Authorization Required"
</Files>
<Files admin-ajax.php>
order allow,deny
allow from all
</Files>
# END WPSOS htaccess plugin
# доступ по IP
RewriteEngine on
RewriteCond %{REQUEST_URI} ^(.*)?wp-admin$ [OR]
RewriteCond %{REQUEST_URI} ^(.*)?wp-login.php$
RewriteCond %{REMOTE_ADDR} !^2.154.88.31
RewriteRule ^(.*)$ – [R=403,L]
LEOnidUKG
На сайте с 25.11.2006
Offline
1723
#9

Вам надо сразу после

RewriteEngine On

прописать правило.

SeVlad
На сайте с 03.11.2008
Offline
1609
#10
RS485:
Мой .htaccess

Из серии "накопипастил всё, что смог найти"?

# Редирект с index.php на главную - ересь полная

# редирект на папки со слешем на конце - аналогично

Это ВП делает из коробки (если не поломать)

# Stop Apache from serving .ht* files - какая прелесть... говноплагин какой-то нагенерил? :)

AuthUserFile /data/www/site.ru/.htpasswd - класс!! Секретный файл в каталоге с сайтом :) Этот же говноплагин похоже сделал.

А после этого еще и # доступ по IP.... ЧудесТно.:)

А, да! Редиректы нужно делать первыми.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий