1、配置.NET Core运行环境
https://docs.microsoft.com/zh-cn/dotnet/core/install/linux-centos
注意要选择对应的服务器系统版本,否则会出现问题。
2、发布.NET Core 应用
在Visual Studio内右键项目文件夹,点击发布
3、在服务器上部署.NET Core应用
部分参考Linux 宝塔部署 ASP.NET Core 应用
首先cd
进入项目文件夹内。
运行你的dll文件
代码语言:javascript复制nohup dotnet 项目名.dll
这里默认会运行在localhost:5000
或localhost:5001
上,若想放在其他端口可以执行nohup dotnet run --urls=http://localhost:端口
,参考NET问答: 如何给 ASP.NET Core 配置指定端口 ?
执行好之后直接关闭终端 (或通过exit退出终端,但决不能^C)
可以先在ssh内运行curl -I localhost:5000
测试是否成功。
其次 开放防火墙、安全组端口
4、设置反向代理
(参考asp.net core 程序在nginx上部署 完整教程)
找到nginx配置文件并vim nginx.conf
,进行以下配置:
server {
listen 80;
server_name example.com *.example.com;
location / {
proxy_pass http://localhost:5000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
注意修改server_name项为自己的域名,若没有域名则填公网ip即可。
检查nginx是否有错误nginx -t
重启nginx
代码语言:javascript复制nginx -c /etc/nginx/nginx.conf
nginx -s reload
注:若不想反向代理,可参考:DotNet Core 2.0部署后外网IP访问
5、关于.NET Core应用运行原理
.NET Core应用运行原理
.NET Core应用运行原理