2017-01-08 10 views
2

Мне нужна помощь в WordPress после взлома.URL-адреса Wordpress не возвращаются 404 Страниц

Я полностью очистил хак, и Google удалил «Этот сайт может быть взломан».

Этот хакер представил множество URL-адресов для Google, содержащих случайную строку в конце каждого допустимого URL-адреса. Они отображаются как японские ссылки в поиске Google.

Есть URL-адрес, перечисленный, которые показывают, как:

www.example.co.uk/?WGlaVUdsVVNHUnNXVzFzY2xwVE1YbFphVGg1VFZSSmVFOVVTVFZQUjJNOWNFUT14b0g 

Если я нажимаю на ссылку, он показывает сайты правильных домашней страницы, а не показывать страницу 404.

Если я перехожу к www.example.co.uk/thispagedoesnotesist, он отображает ошибку 404 просто отлично.

Есть ли способ получить страницы с этими случайными строками URL, чтобы показать ошибку 404?

Любая помощь или совет были бы замечательными.

ответ

1

Вы можете привязать URL-адреса, содержащие длинную строку случайных запросов, к 404 с чем-то вроде следующих директив mod_rewrite в .htaccess. Это должно идти до существующие директивы WordPress:

RewriteCond %{QUERY_STRING} ^\w{30,}$ 
RewriteRule ^$ - [R=404,L] 

Запрос на корневой документ (домашняя страница), которая содержит строку запроса из 30 или более букв/цифр, то сервировать 404.

Однако, если это японские символов в URL (в отличие от аз, как в вашем примере), то выше, могут не совпадать, поэтому попробуйте следующее вместо:

RewriteCond %{QUERY_STRING} ^[^=]{30,}$ 

, который соответствует всем символам, кроме =.

UPDATE: Для сопоставления опциональный= в конце, то вы можете включить =? перед $ в приведенном выше регулярном выражении. Например, ^\w{30,}=?$ или ^[^=]{30,}=?$.

Если вы не используете строки запроса на всех, то вы могли бы изменить RewriteCond директиву следующего, который соответствует любой строки запроса (то есть по крайней мере один символ).

RewriteCond %{QUERY_STRING} . 
+0

Сэр, вы удивительны. Это именно то, что мне нужно! Спасибо! Последний вопрос. Я заметил, что если URL-адрес заканчивается символом =, URL-адрес не перенаправляется на страницу 404.Есть ли способ включить URL-адреса с = в конце? Еще раз спасибо! – CypherUK

+0

Добро пожаловать. Я обновил свой ответ относительно соответствия необязательного '=' в конце. – MrWhite

+0

Отлично. Спасибо большое. Может ли это работать и для других случайных символов? Я заметил, что URL-адреса с% в них не перенаправлены на 404. Я бы перенаправил все запросы, но я думаю, что плагин Contact Form 7 использует запрос при нажатии кнопки отправки формы. Еще раз спасибо за все ваше время. Это очень ценится. – CypherUK

1

Проблема в том, что эти ссылки указывают на вашу домашнюю страницу с параметрами. Эти случайные строки текста не передаются как сегменты URL-адреса или страниц, так как им предшествуют ?.

Существует не так много, что вы можете сделать. Если бы я был на вашем месте, я бы просто сообщил о ссылках и попросил их удалить со стороны Google. Не беспокойтесь об этом на вашем конце.