.net core独立部署到Linux问题点总结
1.修改配置文件:将所有路径改成Linux下的路径;如果使用了log4net,记得修改日志保存路径;
2.发布时选择独立部署、目标运行时选择Linux;
3.如是是用mysql,记得在etc/my.cnf的配置文件里添加:lower_case_table_names = 1 (表名不区分大小写),否则EF查询不到数据(报表名不存在,大写的表名);
4.上传到Linux后对应文件夹要修改权限,是程序可以执行、打日志等;
5.开发数据库、网站端口;
以下是刚刚开始从网上找的运行方法,但是没有达到我想要的(后台运行)
6.修改/etc/systemd/system/slaughter.service
[Unit]
Description=mj
Description=mj
[Service]
WorkingDiretory=/www/wwwroot/publish_web
ExecStart=/www/wwwroot/publish_web/xxx.Web
Restart=always
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=dotnet-xxx
User=root
WorkingDiretory=/www/wwwroot/publish_web
ExecStart=/www/wwwroot/publish_web/xxx.Web
Restart=always
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=dotnet-xxx
User=root
[Install]
WantedBy=multi-user.target
WantedBy=multi-user.target
7.在发布目录下执行:./xxx.xx --urls=http://*:5001
之后想到之前部署java时使用的命令:
6. nohup ./ --urls=http://*:5001 >/dev/xx 2>&1 & (注意:linux运行的不是dll文件,而是生成的一个项目名的不带后缀的文件,windows下类型为“WEB文件”,如demo而不是demo.dll)
现在.netcore程序就在后台运行了,使用命令: ps -ef | grep 5001可以查看到刚刚运行的进程
7.停用,找到进程使用下面命令: kill -9 进程ID
分类:
.net知识积累
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?