Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php阻止直接访问不指向文件夹的url_Php_.htaccess_Protection_Methodology_Http Referer - Fatal编程技术网

php阻止直接访问不指向文件夹的url

php阻止直接访问不指向文件夹的url,php,.htaccess,protection,methodology,http-referer,Php,.htaccess,Protection,Methodology,Http Referer,我正在使用.htaccess和用户友好的链接。提交表单后,mydomain.com/contact将页面重定向到domain.com/contact verify。如果页面验证了用户提交的数据,则会将页面重定向到domain.com/thank you for email。如果验证失败,则再次将页面重定向到domain.com/contact,并显示错误。(Post-Redirect-Session变量flow) 如何防止直接访问domain.com/contact verify和domain.

我正在使用.htaccess和用户友好的链接。提交表单后,my
domain.com/contact
将页面重定向到
domain.com/contact verify
。如果页面验证了用户提交的数据,则会将页面重定向到
domain.com/thank you for email
。如果验证失败,则再次将页面重定向到
domain.com/contact
,并显示错误。(
Post-Redirect-Session变量
flow)

如何防止直接访问
domain.com/contact verify
domain.com/thank you for email

我搜索了
.htaccess
用法,但只能找到保护特定文件的保护。另外,我在谷歌上读到一些信息,
$\u服务器[“HTTP\u REFERER”]
不可靠

请注意,我的
.htaccess
中已经有了
选项所有索引


您能描述一下winner方法吗?

跟踪用户使用会话或cookie的进度。 然后,对于要限制访问的页面,添加代码以检查用户进度,并在用户未达到所需进度点时重定向(或显示拒绝访问消息,无论您想做什么)

if (!isset($_SESSION['progress']) || $_SESSION['progress'] != 2) {
    header('Location: /contact');
    exit;
}

使用会话或cookie跟踪用户的进度。 然后,对于要限制访问的页面,添加代码以检查用户进度,并在用户未达到所需进度点时重定向(或显示拒绝访问消息,无论您想做什么)

if (!isset($_SESSION['progress']) || $_SESSION['progress'] != 2) {
    header('Location: /contact');
    exit;
}

在domain.com/contact中定义会话变量,如果未设置该变量,则404不希望访问的页面。在domain.com/contact中定义会话变量,如果未设置该变量,则404不希望访问的页面。