新版phpcms v9.3.1针对后台访问路径已经添加了后台访问域名设置(下图),但只能是绑定一个单独的域名,那么我们不想或者不方便使用二级域名怎么办?在网上查到的Phpcms V9修改后台登录地址方法有很多,但是很多修改后原网址仍然能访问并跳转到登录页,以下这个方法修改Phpcms V9后台登录地址后真正隐藏后台登录地址。
1、修改 /phpcms/modules/admin/index.php,把public function login函数名改为自己想要的名字,以下简称“函数名”。
2、批量替换phpcms v9 目录及子目录下“?m=admin&c=index&a=login”为“?m=admin&c=index&a=函数名”
3、修改 /phpcms/modules/admin/classes/admin.class.php
将代码:
final public function check_admin() {
if(ROUTE_M =='admin' && ROUTE_C =='index' && in_array(ROUTE_A, array('login', 'public_card'))) {
修改为:
final public function check_admin() {
if(ROUTE_M =='admin' && ROUTE_C =='index' && in_array(ROUTE_A, array('函数名', 'public_card'))) {
---------------------------------------------
将代码:
final public function check_priv() {
if(ROUTE_M =='admin' && ROUTE_C =='index' && in_array(ROUTE_A, array('login', 'init', 'public_card'))) return true;
修改为:
final public function check_priv() {
if(ROUTE_M =='admin' && ROUTE_C =='index' && in_array(ROUTE_A, array('函数名', 'init', 'public_card'))) return true;
4、修改 /phpcms/modules/admin/classes/admin.class.php
在final public function check_admin() { 函数中开始部分添加以下代码 :
if(!in_array(ROUTE_A, array('函数ming ', 'public_card'))&&(!isset($_SESSION['userid']) || !isset($_SESSION['roleid']) || !$_SESSION['userid'] || !$_SESSION['roleid'])){
Header("http/1.1 403 Forbidden");
exit('No permission resources.');
}
访问一下htpp://网址/index.php?m=admin&a=login 此时会提示No permission resources.
同理第4步中也可以改成showmessage函数来跳转到指定网址。
5、修改 /admin.php,并将admin.php重命名为你想要的件名,如myroot.php
<?php
header('location:index.php?m=admin&a=函数名');
?>
此时隐藏后台登陆地址就完成了,这时可以通过以下两个新的后台地址登陆了:
http://域名/myroot.php
http://域名/index.php?m=admin&a=函数名
除非注明,均为湛蓝天空原创,转载请注明本文网址:http://skyhome.cn/phpcms/288.html
后台域名访问设置对很大一部分使用空间的小站来说很不方便,而且域名容易被发现。
后台访问域名设置
修改好了~ 完美!