2015-01-14 1 views
0

Как сделать веб-страницу видимой только для пользователей, которые приходят с определенной страницы или ссылки? Если ссылка на страницу будет доступна позже непосредственно из браузера или из любого другого источника вместо указанной страницы или ссылки, то выдается сообщение об ошибке или перенаправляется на другую страницу.Создание веб-страницы видимо только в том случае, если пользователь приходит с определенной страницы или ссылки

Если да, сообщите мне, как вы это сделаете, и каковы ваши рекомендации.

+2

http://stackoverflow.com/questions/1519349/track-where-users-come-from -in-php – adeneo

+0

Возможный дубликат [Определение ссылки в PHP] (http://stackoverflow.com/questions/165975/determining-referer-in-php) –

+0

Да, используйте ссылку adeneo и установите «display: none» или что бы вы ни скрывали. – jyoon

ответ

2

Я думаю, что что-то, что может быть полезно для вас $_SERVER['HTTP_REFERER'] - see details

С этой вар Вы можете просто проверить, откуда уже пришел пользователь и решить, на стороне сервера, чтобы показать или не другую страницу с вашего сайта

В псевдокоде

<?php 

if ('a-referer-identificator' === $_SERVER['HTTP_REFERER']) { 

echo 'show your website'; 

} else { 
// Redirect for access denied or sth like that 
header('Location: http://www.example.com/'); 
} 

?> 
+0

http_referer не всегда надежный. Вы можете установить сеанс var на авторизованной странице и отключить его при загрузке страницы с ограничениями. Но для основных потребностей http_referer, вероятно, будет штраф –

+0

Право. И это, конечно, решение в PHP –

+0

@KaiQing Я не верю, что есть способ сделать это, чтобы предотвратить вредоносную запись. Но эта техника не подходит ни для чего, что касается безопасности - я воображаю, что OP хочет приветствовать посетителей поисковой системы или показывать только контент, когда вы пришли с домашней страницы, или что-то в этом роде. – OJFord

0

отслеживаемых с переменной PHP HTTP-Referer. Но помните о том, что, как и любая HTTP-переменная, она может быть легко изменена кем-то.

Если вы используете его вам просто нужно построить Если в блоке, и если он ложный редирект с header -Функция

Смежные вопросы

 Смежные вопросы