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程序

相关推荐
葡萄城技术团队12 小时前
1000 人协同压测的环境瓶颈排查:CPU 争用与 Wi\-Fi
前端
Ruiery12 小时前
Linux 6.6内核内存管理深度解析(十六):mmap — 用户态“申请内存“的真相
linux·运维·服务器
欧米欧12 小时前
Linux系统篇(七),环境变量的底层溯源,核心获取机制与安全应用
linux·运维·服务器
Ruiery13 小时前
Linux 6.6内核内存管理深度解析(十八):KASLR 内核地址空间随机化
linux·运维·服务器·安全
excel13 小时前
Marked 与 Markdown 有什么区别?该怎么选?
前端
qetfw13 小时前
UOS MariaDB 数据库:安装、最小权限与备份验证
linux·数据库·mariadb·uos
Da Da 泓14 小时前
五子棋 Web 端测试用例报告
前端·网络·websocket·网络协议·测试用例·项目
zxcvb15315 小时前
远程查看本地文档:一条轻量 Web 文件服务的工程化链路
前端·远程查看文档
niucloud-admin15 小时前
NIUCLOUD PHP SAAS上门家政使用文档:城市管理
java·前端·php
逆风的蚂蚁15 小时前
linux服务器性能调整怎么落地?我把 CPU 调度、I/O 优先级和内核参数这几个旋钮都拧了一遍
linux·运维·服务器