ulua热更新自定义服务器出现问题的解决方案

在将ulua热更新框架的HttpServer部署到服务器时,遇到启动服务时的“指定的网络名格式无效”错误。通过将host改为'http://+:端口/'或'http://*:',解决了此问题。另外,客户端连接返回404错误,原因是OnGetRequest()函数中关于host长度的计算错误,可修正为根据实际ip和端口的长度进行计算。" 118490691,8206353,配置SMTP解决Grafana邀请用户邮件发送问题,"['Grafana', '邮件配置', 'SMTP配置']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 启动服务的时候出现 “指定的网络名格式无效” 的问题

原先一直是拿本机用ulua做热更测试 所以热更的时候没有出现什么问题

然后我把以前的 simpleframework (也是热更新框架)中的 Server 中的两个 cs 文件(HttpServer HttpService)放到了服务器的 photon 上

 然后启动服务器的同时启动 HttpServer

在 HttpServer 中的 host 改为:http://(你的服务器ip):(你的端口 这里用6688)/

这样在启动的时候会报错 :指定的网络名格式无效

把ip换成原来的 localhost 就可以  后来上网搜寻 找到了问题

将 host 改为 http://+:(你的端口)/

这样就好使了  有时候可能出现这个ip已经在本机监听注册过了   这个应该是你之前启动服务这个的时候还没有完全关闭 

等一会然后重启服务一下就可以了 

host 中 如果把 + 换成 * 也好使 

2 客户端连接服务端的时候返回 信息是 404 错误(需要 log 一下能看到)

这个问题有很多原因  我只列出我遇到的

由于 1 问题 中修改了 host 所以长度发生了改变

在 HttpServer.cs 代码中

OnGetRequest()函数里有这么一句

string url = request.Url.ToString().Remove(0, host.Length - 1);

后面的第二个参数参数是 host 的长度  所以是这里发生了问题

这里可以自行修改  我是写死的 ip :

 string url = request.Url.ToString().Remove(0, ("http://" + ip + ":" + port + "/").Length - 1);(这里的 ip 和 port 都是你服务器的 ip 和 port) 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值