传奇单机架设卡在正在启动登录服务器页面不动排查解决办法

来源: 作者: 点击:
卡在正在启动登录服务器这一步,意味着登录网关程序无法正常完成初始化,后续的角色网关、游戏引擎都不能继续加载,这个现象大多和端口冲突、数据库连接异常、配置文件错误、依赖组件缺失、文件权限不足有关,逐一对照排查就能定位问题。

先查看登录网关程序的控制台窗口,不要只看启动批处理的文字提示,打开LoginSvr对应的黑色日志窗口,观察里面滚动的报错信息。很多时候批处理只显示正在启动登录服务器,真实报错藏在网关日志内,常见提示有端口绑定失败、数据库连接超时、读取列表文件失败、网关注册失败等,日志信息是定位故障最直接的依据。

优先排查端口占用问题,登录网关默认会占用固定登录端口,这个端口被其他软件占用,网关就会一直卡在启动阶段,无法完成监听。打开端口查看工具,输入端口号查询占用程序,浏览器、其他游戏服务、后台管理工具、虚拟机相关程序都有可能抢占端口。确认端口被占用之后,有两种处理方式,关闭占用端口的程序,或者修改登录网关配置文件,更换成空闲端口。修改端口之后,登录器配置、网关列表文件内的端口数字要同步修改,只改一处会出现后续连接异常。

核对登录网关的配置文件,找到配置文件打开,检查里面填写的数据库地址、账号、密码、数据库名称。登录网关需要连接数据库读取账号信息,账号密码写错、数据库地址填写错误,都会持续等待数据库响应,表现为卡住不动。单机环境数据库地址填写127.0.0.1,确认数据库服务已经提前启动,数据库没有设置只读状态,数据库文件没有损坏。如果是mssql数据库,还要确认对应的实例名称和配置文件内保持一致,实例名不对也会连接超时。

检查登录网关读取的服务器列表文件,列表文件格式错误、路径填写错误、文件编码异常,网关加载列表的时候会卡住。部分版本列表文件放在网关目录下,有的版本读取外部txt文本,打开列表文件查看区服名称、IP、端口格式,多余的空格、换行、特殊符号都会造成解析失败。不要直接复制网上的列表内容,按照原版文件的格式填写,修改完成后保存为ANSI编码,避免编码不兼容。

系统依赖组件缺失也会造成登录网关启动停滞,老版本网关程序需要vc++运行库、net框架支持,缺少对应运行库,程序不会直接弹窗报错,而是停留在启动界面。安装对应版本运行库合集,安装完成后重启电脑,再重新运行启动批处理。部分网关需要ODBC数据源,数据源没有正确配置,网关无法和数据库建立通信,需要对照配套文档新建数据源,数据源名称和配置文件内名称保持一致。

文件权限和杀毒隔离问题同样不能忽视,解压后的服务端文件,权限不足会导致网关无法读取配置和数据库文件。右键整个服务端文件夹,选择属性,取消只读勾选,给当前用户开启完全控制权限。安全软件有可能隔离网关程序、dll依赖文件,打开隔离区查看,恢复被隔离的文件,同时把整个服务端目录加入信任列表,文件丢失或者被隔离,网关初始化流程会中断卡住。

启动顺序错误也会出现这类情况,登录网关依赖数据库先行运行,很多人直接双击一键启动批处理,数据库还没完全加载完成,网关就开始尝试连接,持续等待连接响应,看起来就是卡住不动。可以分开手动启动,先启动数据库服务,等待数据库日志提示启动成功,再单独启动登录网关,观察是否还会卡住。如果分开启动正常,就是批处理里面延时设置太短,打开bat文件,增加延时等待命令,给数据库留出足够加载时间。

网关文件损坏或者版本不匹配也会引发该故障,从资源包里面重新解压一份完整的LoginSvr网关程序,替换掉现有的文件,不要混用其他版本的登录网关,不同引擎配套的登录网关不能通用。替换完成之后,删除网关目录下生成的日志缓存文件,再重新启动。部分版本需要配套的加密验证文件,验证文件缺失或者校验失败,登录网关会持续等待验证,无法完成启动。

虚拟机环境下还要检查网络设置,虚拟机内部的网关配置IP和虚拟机网卡IP不对应,网络不通,网关也会卡在启动阶段。单机使用的时候,网关配置IP和网卡IP保持一致,不要随意填写无关地址。

处理完成之后,关闭所有相关程序窗口,清理残留进程,再按照顺序重新启动,先数据库,再登录网关,观察日志出现登录服务器启动成功、端口监听正常的提示,再继续启动角色网关和游戏主引擎。如果依旧卡住,优先回看日志里的报错文字,根据报错提示针对性调整,不要盲目反复点击启动批处理。