Как разрешить перенаправление с определенных доменов - PullRequest
0 голосов
/ 05 февраля 2019

У меня есть страница регистрации на портале моего веб-сайта, но я хочу разрешить ее загрузку только в том случае, если предыдущий домен был доменом PayPal (например).Таким образом, я бы гарантировал, что даже если бот сканирует мой экземпляр WordPress (что не сложно), он не сможет зарегистрироваться.

Я знаю, что mod_rewrite может предотвратить хотлинкинг и разрешить определенным доменам загружать этот контент.

RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?mydomain.com [NC] RewriteRule \.(jpe?g|gif|bmp|png)$ https://example/404.jpg [NC,L]

Но возможно ли использование обычного URL?То есть не файл, а страница?

Ответы [ 2 ]

0 голосов
/ 19 февраля 2019

Да, вы можете использовать HTTP_REFERER для любого URL.Добавьте это в свой .htaccess:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?paypal.com [NC]
RewriteCond %{REQUEST_URI} ^/your-registration-url$ [NC]
RewriteRule ^your-registration-url$ https://website.com/404 [R=301,L]

Это перенаправит любого, кто посетит ваш регистрационный URL, не имеющий paypal.com в качестве реферала, на веб-сайт website.com/404 или любую другую страницу, на которую вы их перенаправите.

0 голосов
/ 05 февраля 2019

Вы можете использовать (при условии, что ваша регистрационная ссылка, например, /wp-login.php?action=register)

RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?paypal.com [NC]
RewriteCond %{QUERY_STRING} ^action=register$
RewriteRule ^wp-login.php index.php [NC,L]

.., чтобы перенаправить на index.php, если кто-то попытался зарегистрироваться, не приходя изPayPal (заголовки могут быть подделаны, конечно)

...