Php 使用htaccess隐藏登录页面

Php 使用htaccess隐藏登录页面,php,.htaccess,Php,.htaccess,1.如何使用ht access文件隐藏一些入口页面,即我们通过在浏览器的URL栏中键入URL来进入子站点,而不是单击父站点的链接 2.有没有办法获取PHP浏览器中使用的上一个URL 请给我一些建议 我试过这个 if(($req->getrequestPath() == 'test') && ($_SERVER['HTTP_REFERER'] == '') ){ header('HTTP/ 401 Unauthorized');

1.如何使用ht access文件隐藏一些入口页面,即我们通过在浏览器的URL栏中键入URL来进入子站点,而不是单击父站点的链接

2.有没有办法获取PHP浏览器中使用的上一个URL

请给我一些建议

我试过这个

    if(($req->getrequestPath() == 'test') && ($_SERVER['HTTP_REFERER'] == '') ){
                header('HTTP/ 401 Unauthorized');           
    }
我还在.htaccess文件中添加了ErrorDocument 401/unauthorize.php, 但是它似乎不起作用

附言:我这样做是具体的

我试图给予

if($_SERVER['PHP_AUTH_USER']!='blahblah' || $_SERVER['PHP_AUTH_PW']!='blahblah'){ 
        header('WWW-Authenticate: basic realm="Check my Site"');
        header("HTTP/1.0 401 Unauthorized");
}
头文件(“HTTP/1.0”)应该带我到.htaccess文件,对吗?即使这样也不会发生!!

请提供帮助

您可以使用$\u服务器['HTTP\u REFERER']了解您的参考url。
尝试<代码> PrimtJr($yServer [ HtppHealthReector ])

> P>可以使用<代码> $yServer [ HtppHeXiver引用] < /C>,但是不要忘记用<代码> AdSLASS< /Cube >等,因为它是一个常见的攻击向量。
if(addslashes($_SERVER["HTTP_REFERER"]) != "your address here")
{
   die("not allowed");
}

此外,您可以在htaccess的RewriteCond中检查%{HTTP_REFERER}

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://example.com/ [nc]
RewriteRule loginpage.php - [R=404]

您可以使用以下重写规则将客户端url重定向到父站点:

RewriteEngine on

RewriteCond %{REQUEST_FILE} !-f
RewriteCond %{REQUEST_FILE} !-d

RewriteRule ^(.*)$ index.php
上面的示例仅将所有url重定向到索引页。类似地,您可以将客户端url重定向到需要重定向的位置