Php 使用htaccess设置假目录

Php 使用htaccess设置假目录,php,.htaccess,Php,.htaccess,我有一个名为/admin的目录,这是管理面板最容易预测的名称。到目前为止,我已经使用htaccess创建了一个名为/ase的假目录。当你转到url时,你必须登录到管理面板。当您未登录到/ase,并且您访问/admin,它将显示404未找到 我的访问权限是: RewriteEngine On RewriteRule ^ase admin/allseeingeye/ 但是人们仍然可以访问管理员/allseeingeye/登录/admin。是否有类似以下内容的PHP脚本: if (url = adm

我有一个名为
/admin
的目录,这是管理面板最容易预测的名称。到目前为止,我已经使用htaccess创建了一个名为
/ase
的假目录。当你转到url时,你必须登录到管理面板。当您未登录到
/ase
,并且您访问
/admin
,它将显示404未找到

我的访问权限是:

RewriteEngine On
RewriteRule ^ase admin/allseeingeye/
但是人们仍然可以访问
管理员/allseeingeye/
登录
/admin
。是否有类似以下内容的PHP脚本:

if (url = admin/allseeingeye/) {
    error 404 script
} else {
    // rest of the page
}
但是页面仍然在
/ase
上运行吗


上面的脚本完全错误,但这只是为了解释。

您不需要PHP脚本,您可以在
mod_rewrite
中使用单独的规则执行此操作:

RewriteEngine On

# forbid direct request to allseeingeye
RewriteCond %{THE_REQUEST} /allseeingeye/ [NC]
RewriteRule ^ - [L,R=404]

RewriteRule ^ase/?$ admin/allseeingeye/ [L,NC]

我不明白,所以您的用户必须访问
www.example.com/ase
才能登录,然后他们会被重定向到
www.example.com/admin
,并被允许查看内部页面?为什么不把
admin
的内容放到
ase
中,告诉用户这是新的URL呢。我假设您在一些URL中硬编码了“admin”;为此,我建议全局搜索“admin”,并根据需要替换为“ase”。@MonkeyZeus我的大多数/所有系统都连接到网站,网站也连接到它们-当我将我的
/admin
文件放置到
/ase
时,错误会到处都是。我不介意使用
/admin
,但我介意暴力攻击,谢谢你的输入。我已经尝试了你的建议,但我仍然可以联系到
管理员/allseeingeye/
让我们联系。