PHP Server Monitor默认是需要登陆才可以看到服务器的监控信息。有时候我们需要将监控内容进行公开访问。下面就提供一种给访客访问无需登陆账户的办法。
本文目录
-
- 1.在PHP Server Monitor后台创建一个普通用户
-
- 2.修改User.php配置文件
-
- 3.删除访客可操作菜单
1.在PHP Server Monitor后台创建一个普通用户
作为访客账号,账户和密码随意写。比如test。
账户等级选择普通用户,下方的监控自己选择公开哪些项目。
2.修改User.php配置文件
文件位置:\\src\\psm\\Service\\User.php
在大概98行左右,$this->session = $session;的后面加入以下代码。
global $_GET;
if ($_GET["kl"] == "test"){
$user_id = 2;
$this->setUserLoggedIn($user_id, true);
$user = $this->getUser($user_id);
$this->newRememberMeCookie();
}
然后访问地址:http://域名/?kl=test即可自动登录test账户。
3.删除访客可操作菜单
仅仅让访客自动登录账户还不行,我们还需要删除一些访客账户可操作性的菜单。
编辑文件\psm\Module\AbstractController.php,在274行,修改为
$items = array('server_status', 'server_log');
这样访客只能看到监控项目,和日志,无法操作其他设置。
效果如下:
右侧访客还可以更该账户资料等信息,我们可以直接把这个菜单给注释或者直接删掉。
修改文件/src/templates/default/main/menu.tpl.html
先把那个帮助给删掉,本文是注释掉了。
<!--
帮助菜单,已注释
<li id="nav_option_help">
<a href="http://www.phpservermonitor.org/support" target="_blank">{{ label_help }}</a>
</li>
-->
然后删除或者注释掉右上角的账户资料选项。
<!--
<ul class="nav pull-right">
<li class="dropdown visible-desktop">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">{{ label_usermenu }} <b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="{{ url_profile|raw }}"><i class="icon-cog"></i> {{ label_profile }}</a></li>
<li><a href="{{ url_logout|raw }}"><i class="icon-off"></i> {{ label_logout }}</a></li>
</ul>
</li>
<li class="hidden-desktop divider"></li>
<li class="hidden-desktop"><a href="{{ url_profile|raw }}">{{ label_profile }}</a></li>
<li class="hidden-desktop"><a href="{{ url_logout|raw }}">{{ label_logout }}</a></li>
</ul>
-->
这样就达到了我们所需要的效果。