запретить прямой доступ к определенной странице

У меня есть страница, к которой я не хочу, чтобы пользователи обращались напрямую из соображений безопасности.

Например, у меня есть страница profile.php; Я хочу, чтобы когда пользователь нажимал кнопку, открывалась страница профиля, и если он хочет получить доступ к странице напрямую с URL-адреса, это ограничит его.

<?php define('SECURE_PAGE', true);include 'includes/page.php';?>

Я пробовал это, но не смог решить свою проблему


person husnain    schedule 05.05.2020    source источник


Ответы (1)


Вы можете просто вернуть код состояния 403 при определенных условиях:

if ($something) {
    http_response_code(403);
    // optionally display nice 403 page with `include()` or just `echo`.
    exit;
}
person Robo Robok    schedule 05.05.2020
comment
Когда я определяю константу в index.php и получаю к ней доступ в profile.php, он говорит, что неопределенная константа - person husnain; 05.05.2020
comment
Используете ли вы какой-либо фреймворк? Сама константа ничего не сделает. - person Robo Robok; 05.05.2020
comment
Нет, на самом деле я новичок в php - person husnain; 05.05.2020
comment
Взгляните на предложенный ответ выше. Там показано, как это сделать через .htaccess, однако я думаю, что в большинстве случаев это нужно делать в коде. - person Robo Robok; 05.05.2020