关于微擎2.7.8不带网络控制台自定义路由修改方法

1.修改/web/index.php,在该文件中找到如下代码:
require __DIR__ . '/../framework/bootstrap.inc.php';
require IA_ROOT . '/web/common/bootstrap.sys.inc.php';
在该代码块下面添加以下代码:
if (!empty($_W['setting']['copyright']['login_route']) && $_W['setting']['copyright']['login_route'] == $_GPC['c']) {
$controller = 'user';
$action = 'login';
}
2.修改/web/source/user/login.ctrl.php,找到37行(站点版本不同的话代码位置可能有差池)的代码片段:
template('user/login-' . $login_template);
替换为
if (empty($_W['setting']['copyright']['login_route']) || $_GPC['c'] == $_W['setting']['copyright']['login_route']) {
template('user/login-' . $login_template);
} else {
header('HTTP/1.1 404 Not Found');
header("status: 404 Not Found");
exit;
}
3.修改/web/source/system/site.ctrl.php,找到62行的switch代码片段,插入如下代码:
case 'login_route':
if (!empty($_GPC['value'])) {
$login_route = safe_gpc_string($_GPC['value']);
if (empty($login_route)) {
iajax(-1, '自定义路由值只支持字母和数字');
}
} else {
$login_route = '';
}
$settings['login_route'] = $login_route;
break;

4.修改/framework/model/system.mod.php,找到system_setting_items()函数:

function system_setting_items() {
	return array(
		'bind',
		'icp',
		'policeicp',
		'login_type',
		'log_status',
		'mobile_status',
		'reason',
		'autosignout',
		'status',
		'welcome_link',
		'login_verify_status',
		'address',
		'blogo',
		'baidumap',
		'background_img',
		'company',
		'companyprofile',
		'description',
		'email',
		'footerleft',
		'footerright',
		'flogo',
		'icon',
		'keywords',
		'leftmenufixed',
		'notice',
		'oauth_bind',
		'phone',
		'person',
		'qq',
		'statcode',
		'slides',
		'showhomepage',
		'sitename',
		'template',
		'login_template',
		'url',
		'verifycode',
		'slide_logo',
		'console_status',
		'login_route',
	);
}

 

 追加以下代码:

  

'login_route',

  

 5.修改web/themes/default/system/site.html,找到代码:    
	<!-- 关闭原因 start -->
					<div class="form-file">
						<div class="form-label">关闭原因</div>
						<div class="form-value" ng-bind="settings.reason"></div>
						<div class="form-edit">
							<we7-modal-form label="'关闭原因'" on-confirm="saveSetting(formValue, 'reason', 'string')" value="settings['reason']"></we7-modal-form>
						</div>
					</div>

在他下面追加

<div class="form-file">
						<div class="form-label">自定义路由</div>
						<div class="form-value" ng-bind="settings.login_route"></div>
						<div class="form-edit">
							<we7-modal-form label="'路由地址'" on-confirm="saveSetting(formValue, 'login_route', 'string')" value="settings['login_route']"></we7-modal-form>
						</div>
					</div>

然后去站点设置里设置自定义路由。

设置完毕之后访问登录界面如下

你的域名/web/index.php?c=你设置的自定义路由字符串

注意自定义路由设置就是一个字符串,例如:123456 或abcdefg  

 
上一篇:vue工程在非开发环境不能直接通过地址栏进入非 ‘ /“ 的地址(route)


下一篇:HCIP第一天作业