Вы можете попробовать использовать PHP $_SERVER['HTTP_REFERER']
для отслеживания исходного URL-адреса, откуда приходит ваш посетитель. Я думаю, что это немного хитроумно, и, возможно, не даст такой же результат во всех браузерах. Даже PHP's documentation говорит, что «на это нельзя доверять».
Почему вы должны использовать .htaccess для перенаправления? Вы могли бы сделать что-то вроде этого:
сайта index.php A в:
header("Location: http://siteb.com/?ref=".urlencode('http://sitea.com');
сайта index.php Б:
if(isset($_GET['ref']))
{
if($_GET['ref']=='http://sitea.com')
{
// Do something
}
}
Edit:
Если вы не можете отредактируйте код или сервер сайта A, попробуйте использовать:
if($_SERVER['HTTP_REFERER']=='http://sitea.com')
{
// Do something
}
Какой у вас язык на стороне сервера? – ManseUK
Нет. Ваш сайт будет видеть когда-либо запрос «GET» из клиентского браузера. Перенаправление 301 выполняется непосредственно между этим другим сайтом и браузером клиента и никогда не появится на вашем собственном сайте. –
Если вы хотите отобразить определенную страницу для перенаправления 301, почему бы не просто указать перенаправление 301 на эту страницу? – JaredPar