ASP.NET Core Web在CentOS中结合Nginx托管的部署

1、安装Nginx,此处省略

2、安装ASP.NET Core,参考微软官方的安装教程:

在 Linux 发行版上安装 .NET - .NET | Microsoft Learn

3、使用你电脑的VS创建一个ASP.NET Core Web 项目,注意.NET版本必须和你在centos上安装的版本一样,然后把发布的程序文件上传到你centos指定目录

4、进入centos的 /etc/systemd/system目录,新建一个文件,文件名为 mydotnet.service

后缀名必须是.service,文件名自取

内容如下:

复制代码
[Unit]
Description=DotnetCore-7 Program

# Service 配置参数
[Service]
Type=simple
GuessMainPID=true

//发布后的项目程序目录
WorkingDirectory=/home/wwwroot/myweb
StandardOutput=journal
StandardError=journal

//这条语句执行项目程序目录中的主程序 dll
ExecStart=/usr/bin/dotnet idcweb.dll 
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target

5、启用mydotnet.service,执行命令:systemctl enable mydotnet.service

6、重启服务后,每次开机都会启动程序,如果更新程序需要重启可以使用systemctl手动重启

7、在nginx的配置文件中,网站配置的server段改为(参考)

复制代码
server
    {
        listen 80;
        #listen [::]:80;
        server_name 你的域名 ;
        location / {
        
                           #5000是.net程序的端口号,你也可以用 netstat 命令先看下
        proxy_pass         http://127.0.0.1:5000/;

        proxy_http_version 1.1;
        proxy_set_header   Upgrade $http_upgrade;
        proxy_set_header   Connection $connection_upgrade;
        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;
    }

8、之后,每次更新网站,不需要重启nginx,之需要重启.net程序

相关推荐
划水的code搬运工小李10 分钟前
ubuntu下使用opencode
linux·运维·ubuntu
漫游的渔夫11 分钟前
RAG 落地 3 个月,我才发现排序(Rerank)比检索更重要
前端·人工智能
ZPC821017 分钟前
Ubuntu 实时性优化(专属定制版,适配 fast_shm 通信)
linux·数据库·postgresql
郝学胜-神的一滴17 分钟前
epoll 边缘触发 vs 水平触发:从管道到套接字的深度实战
linux·服务器·开发语言·c++·网络协议·unix
衣乌安、18 分钟前
Agent之ReAct
前端·ai
CodeAI20 分钟前
不会 Next.js 你好意思说自己是 React 开发者?从零到上线一条龙
前端
霁月的小屋30 分钟前
不只是压缩:当模型蒸馏开始复制人格
前端·ai
韩明君30 分钟前
OpenClaw安全部署实现
linux·人工智能·安全·debian·本地部署·ai agent·openclaw
inksci31 分钟前
使用飞帆的上传组件
前端·javascript
里欧跑得慢35 分钟前
微交互设计模式:提升用户体验的细节之美
前端·css·flutter·web