Я хотел бы знать, как разрешить http ссылаться с более чем 1 сайта.
Например
<?php
$domain='example.net';
$referrer = $_SERVER['HTTP_REFERER'];
if (@preg_match("/example.net/",$referrer)) {
} else {
header('Location: http://www.example.net/404.php');
};
?>
Этот код работает, если я открываю ссылки с example.net, но я хочу, чтобы example1.net и example2.net также получили доступ к ссылкам.
Как мне это сделать? Если бы кто-нибудь мог помочь мне с этим, это было бы очень ценно.
Используйте оператор регулярного выражения для или — |
(Труба)
<?php
$domains = Array(
'example.net',
'example2.net'
);
$referrer = parse_url($_SERVER['HTTP_REFERER'], PHP_URL_HOST); // Gets the domain name from referer
if (!preg_match("/" . implode('|', $domains) . "/", $referrer)) {
header('Location: http://www.example.net/404.php');
exit(0); //force exit script after header redirect to ensure no further code is executed.
};
// Normal code execution here...
?>
Других решений пока нет …