linux+jexus 部署.net core项目,出现 502 BAD GATEWAY 或者 返回 500 等 5xx 错误码,表示服务器在尝试处理请求时发生内部错误。
解决方法:
1.确保项目编译运行没有报错。
2.查看linux防火墙是否关闭。
centos 查看防火墙:firewall-cmd --state
关闭防火墙:systemctl stop firewalld.service。这个是临时关闭防火墙,关机开启后还会打开防火墙。
关闭开机启动防火墙:systemctl disable firewalld.service
3.是否指定运行项目dll:
项目存放路径可以自己设定,jexus默认为/var/www/default。
port=8088
root=/ /var/www/default
hosts=*
AppHost={cmd=dotnet /var/www/default/demo.dll;root=/var/www/default;port=0}
4.linux和jexus是严格区分大小的。
现在的mono版本,已经不再支持忽略大小写这个功能了。在jws文件中配置 export MONO_IOMAP=“all” 已经没有作用了,并且在jexus 6 中已经在jws文件中去除了 #export MONO_IOMAP=“all”。
所以必须确保路径没有大小问题,最好统一保持小写。