PHP предотвратить прямой доступ к URL, который не указывает на папку
Я использую.htaccess и удобные ссылки. мой domain.com/contact
перенаправляет страницу на domain.com/contact-verify
после отправки формы. Если страница проверяет данные, предоставленные пользователем, то перенаправляет страницу на domain.com/thank-you-for-email
, Если проверка не удалась, перенаправляет страницу на domain.com/contact
снова с ошибками показано. (Post - Redirect - Session Variables
течь)
Как я могу предотвратить прямой доступ к domain.com/contact-verify
а также domain.com/thank-you-for-email
,
я искал .htaccess
использование, но можно найти только защиту конкретных файлов защиты. Также я прочитал некоторую информацию в Google, что $_SERVER["HTTP_REFERER"]
не надежно?
как примечание, у меня уже есть Options All -Indexes
в моем .htaccess
,
Можете ли вы описать методику победителя?
1 ответ
Отслеживайте прогресс пользователя, используя сеансы или куки. Затем для страниц, к которым вы хотите ограничить доступ, добавьте код, чтобы проверить прогресс пользователя и перенаправить (или показать сообщение об отказе в доступе, что вы хотите сделать), если пользователь не достиг требуемой точки прогресса.
if (!isset($_SESSION['progress']) || $_SESSION['progress'] != 2) {
header('Location: /contact');
exit;
}