使用重写规则名称 .htaccess 限制 URL 重定向



>我有检查登录.php以防止使用URL访问特定页面但是当我输入RewriteRule名称时它不起作用

示例我在URL: domain/user-home.php中键入,检查登录.php工作但是当我输入URL: domain/home检查登录时.php不可读/不起作用

我使用.htaccess重写了我的PHP文件的名称,这是我的代码

RewriteRule ^home?$ user-home.php

我的问题是当我在 URL 限制中键入 RewriteRule 名称不起作用时,这是我的检查登录.php,它仅适用于 php 文件名,如上面提到的user-home.php

检查登录.php代码:

session_start();
if(!$_SESSION['LOGIN'])
{
    exit(include('error2.php'));
}
// this code is included in user-home.php

我在这里编辑了代码。最好的方法是这样的。

RewriteEngine on

RewriteCond %{REQUEST_METHOD} !^POST$
RewriteRule ^php/check-login.php$ - [NC,R=404,L]

这应该重定向到"找不到 404文件"诊断树。

这是

另一种做事方式。根目录上有 404.php。

RewriteRule ^404/?$ 404.php
ErrorDocument 404 http://www.example.com/404/

最新更新