单机架设时打开登录器弹出"列表读取失败"或"无法连接服务器",本质上是登录器向列表地址发HTTPGET请求时没拿到正确的ServerList.txt响应。这个错误不分引擎版本,GOM、GEE、LEG、HERO都会出现,但根源基本集中在五个环节:列表文件格式、Web服务环境、端口监听、IP填写、登录器配置。按下面顺序查,哪一步对上就停。
第一步检查列表文件存放路径和编码。单机架设通常用本地IIS或PHPStudy建一个简易Web环境,列表文件放在网站根目录下。先确认ServerList.txt或List.txt文件名完全匹配登录器里填的地址后缀,注意扩展名隐藏与否。文件内容必须用ANSI编码保存,UTF-8带BOM会导致登录器解析第一行乱码直接判定为空列表。内容格式示例:
1测试单机127.0.0.17000000
0
每条一行,竖线分隔,字段依次为序号、区名、IP、端口、备用端口、是否显示、是否新开、推荐标志。IP写127.0.0.1或局域网IP,端口写Mirserver里GameCenter设定的网关端口,通常是7000。写完后用记事本另存为ANSI编码覆盖原文件。
第二步验证Web服务能否正常访问。在浏览器地址栏直接输入http://127.0.0.1/ServerList.txt,如果能下载或显示文件内容,说明Web环境跑通了;如果打不开或报404,说明网站根目录没指向正确文件夹,或者Web服务根本没启动。PHPStudy用户检查Apache/Nginx灯亮没亮,IIS用户检查默认站点是否启动且物理路径指向放列表的文件夹。单机不需要域名,127.0.0.1够用,别画蛇添足加端口号除非你改了默认80。
第三步核对登录器配置的列表地址。登录器生成器里有个"列表地址"文本框,常见错误是填了www开头的外网网址或加了端口如127.0.0.1:8080。单机只填http://127.0.0.1/ServerList.txt,不要加端口除非你故意把Web服务改到了8080。部分登录器还有"备用列表地址"字段,两个地址都填一样的省得出错。填完重新生成登录器再打开,不要用之前生成的旧登录器反复试。
第四步检查GameCenter网关端口是否被占用。列表文件里写的端口7000必须和Mirserver启动后实际监听的端口一致。打开GameCenter.exe,看"游戏端口"那栏写的数字,如果是7000就不用动,如果是7100或其他,就把列表文件里的端口改成对应的。然后打开cmd输入netstat-ano|findstr7000,看有没有LISTENING状态的进程,如果没有说明网关没启动或者启动后被防火墙杀了,关掉WindowsDefender防火墙再重开GameCenter。
第五步处理杀软拦截和hosts劫持。360、火绒、腾讯管家会把单机登录器联网请求当成威胁直接拦截,表现为登录器打开后闪一下列表读取失败的弹窗然后没下文。把整个Mirserver文件夹和登录器所在文件夹加入杀软白名单,关掉实时防护再试。另外检查C:\Windows\System32\drivers\etc\hosts文件,看有没有把127.0.0.1指向别的域名的条目,有的话删掉或注释掉,否则登录器请求127.0.0.1可能被重定向到其他地方。
第六步针对不同引擎的特殊处理。GOM引擎的登录器在读取列表时还会验证LoginGate和SelGate是否在线,如果这两个网关没启动或端口被占用,即使列表文件正常也会报错。打开M2Server控制台,看左下角网关状态灯,LoginGate和SelGate必须是绿色。GEE引擎则需要先在登录器生成器里勾选"单机模式"并填写本机MAC地址,否则列表读取成功后也会卡在角色选择界面。LEG引擎的老版登录器不支持http协议,只能用ftp或直接读取本地txt,需要把列表文件放到登录器同目录下,列表地址写成.\ServerList.txt。
第七步终极排除法:跳过Web服务直读本地列表。如果以上全试过还是失败,放弃Web方式,把ServerList.txt直接复制到登录器所在文件夹,然后在登录器生成器里把列表地址改成./ServerList.txt或ServerList.txt,部分登录器支持这种相对路径读取。重新生成登录器打开,如果还失败说明登录器本身就不支持本地读取,换个版本的登录器生成器重做一套。
最后说一个很多人踩过的坑:Win10/Win11系统下PHPStudy或IIS默认不启用127.0.0.1的回环访问,需要在"启用或关闭Windows功能"里把InternetInformationServices全部勾上,包括Web管理工具和万维网服务下的所有子项,重启电脑后再启动Web服务。做完这一步,前面五项都不用动就能通。
第一步检查列表文件存放路径和编码。单机架设通常用本地IIS或PHPStudy建一个简易Web环境,列表文件放在网站根目录下。先确认ServerList.txt或List.txt文件名完全匹配登录器里填的地址后缀,注意扩展名隐藏与否。文件内容必须用ANSI编码保存,UTF-8带BOM会导致登录器解析第一行乱码直接判定为空列表。内容格式示例:
1测试单机127.0.0.17000000
0
每条一行,竖线分隔,字段依次为序号、区名、IP、端口、备用端口、是否显示、是否新开、推荐标志。IP写127.0.0.1或局域网IP,端口写Mirserver里GameCenter设定的网关端口,通常是7000。写完后用记事本另存为ANSI编码覆盖原文件。
第二步验证Web服务能否正常访问。在浏览器地址栏直接输入http://127.0.0.1/ServerList.txt,如果能下载或显示文件内容,说明Web环境跑通了;如果打不开或报404,说明网站根目录没指向正确文件夹,或者Web服务根本没启动。PHPStudy用户检查Apache/Nginx灯亮没亮,IIS用户检查默认站点是否启动且物理路径指向放列表的文件夹。单机不需要域名,127.0.0.1够用,别画蛇添足加端口号除非你改了默认80。
第三步核对登录器配置的列表地址。登录器生成器里有个"列表地址"文本框,常见错误是填了www开头的外网网址或加了端口如127.0.0.1:8080。单机只填http://127.0.0.1/ServerList.txt,不要加端口除非你故意把Web服务改到了8080。部分登录器还有"备用列表地址"字段,两个地址都填一样的省得出错。填完重新生成登录器再打开,不要用之前生成的旧登录器反复试。
第四步检查GameCenter网关端口是否被占用。列表文件里写的端口7000必须和Mirserver启动后实际监听的端口一致。打开GameCenter.exe,看"游戏端口"那栏写的数字,如果是7000就不用动,如果是7100或其他,就把列表文件里的端口改成对应的。然后打开cmd输入netstat-ano|findstr7000,看有没有LISTENING状态的进程,如果没有说明网关没启动或者启动后被防火墙杀了,关掉WindowsDefender防火墙再重开GameCenter。
第五步处理杀软拦截和hosts劫持。360、火绒、腾讯管家会把单机登录器联网请求当成威胁直接拦截,表现为登录器打开后闪一下列表读取失败的弹窗然后没下文。把整个Mirserver文件夹和登录器所在文件夹加入杀软白名单,关掉实时防护再试。另外检查C:\Windows\System32\drivers\etc\hosts文件,看有没有把127.0.0.1指向别的域名的条目,有的话删掉或注释掉,否则登录器请求127.0.0.1可能被重定向到其他地方。
第六步针对不同引擎的特殊处理。GOM引擎的登录器在读取列表时还会验证LoginGate和SelGate是否在线,如果这两个网关没启动或端口被占用,即使列表文件正常也会报错。打开M2Server控制台,看左下角网关状态灯,LoginGate和SelGate必须是绿色。GEE引擎则需要先在登录器生成器里勾选"单机模式"并填写本机MAC地址,否则列表读取成功后也会卡在角色选择界面。LEG引擎的老版登录器不支持http协议,只能用ftp或直接读取本地txt,需要把列表文件放到登录器同目录下,列表地址写成.\ServerList.txt。
第七步终极排除法:跳过Web服务直读本地列表。如果以上全试过还是失败,放弃Web方式,把ServerList.txt直接复制到登录器所在文件夹,然后在登录器生成器里把列表地址改成./ServerList.txt或ServerList.txt,部分登录器支持这种相对路径读取。重新生成登录器打开,如果还失败说明登录器本身就不支持本地读取,换个版本的登录器生成器重做一套。
最后说一个很多人踩过的坑:Win10/Win11系统下PHPStudy或IIS默认不启用127.0.0.1的回环访问,需要在"启用或关闭Windows功能"里把InternetInformationServices全部勾上,包括Web管理工具和万维网服务下的所有子项,重启电脑后再启动Web服务。做完这一步,前面五项都不用动就能通。

