CentOS 7 Nginx部署.NET Core Web应用
2024-10-21 04:06:47
部署.NET Core运行时
必要前提
在安装.NET Core前,需要注册Microsoft签名秘钥并添加Microsoft产品提要,每台机器只需要注册一次,执行如下命令:
sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm
安装.NET Core Runtime
sudo yum install aspnetcore-runtime-3.1
# 验证dotnet core runtime是否安装成功
dotnet
#查看系统中包含的.net core runtime版本
dotnet --list-runtimes
部署Asp.Net Core应用程序
在CentOS系统中,创建/home/publish/demo文件夹
mkdir /home/publish /home/publish/demo
在Visual Studio 2019中创建Web应用Linux.Web,发布为文件夹,并通过FXTP上传到publish/demo文件夹下
Nginx安装与配置
安装nginx
# 安装nginx
yum install nginx
# 启动nginx
systemctl start nginx
# 设为开机启动
systemctl enable nginx
可以通过浏览器访问服务器地址 http://ip:80 来看看nginx运行情况
配置nginx.conf
使用XFTP修改 /etc/nginx/conf.d/default.conf 文件,添加如下配置
server {
listen 8000;
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;
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
重启Nginx
nginx -s reload
运行ASP.NET Core应用程序
cd /home/publish/demo
dotnet Linux.Web.dll
通过浏览器访问 http://ip:8000 此时已经可以访问在CentOS上部署的站点了!
设置 .NET Core 开机启动
创建服务文件
vim /etc/systemd/system/demoapp.service
写入如下内容
[Unit]
Description=Demo .NET Web Application running on CentOS 7
[Service]
WorkingDirectory=/home/publish/demo
ExecStart=/usr/bin/dotnet /home/publish/demo/Linux.Web.dll
Restart=always
RestartSec=20
SyslogIdentifier=dotnet-demo
User=nginx
Environment=ASPNETCORE_ENVIRONMENT=Production
[Install]
WantedBy=multi-user.target
设置开机启动
systemctl enable demoapp.service
开启服务,并查询状态
systemctl start demoapp.service
systemctl status demoapp.service
最新文章
- ASP.NET Core 中文文档 第四章 MVC(4.2)控制器操作的路由
- BZOJ4698: Sdoi2008 Sandy的卡片
- cocos2d-x 制作系统公告
- HTML的表单元素
- 线程池的应用及Callable接口的使用
- 12.iscsi-target
- log4cplus配置文件使用
- NDEF-NFC数据交换格式
- Thrift使用实例
- MYSQL事务和锁
- C# 跨线程呼叫控制
- cscope
- 隐马尔可夫模型(HMM)攻略
- 图像处理与matlab实例之图像平滑(一)
- cookie session token
- 快速安装Java环境
- javascript里文字选中/选中文字
- Fast R-CNN论文阅读笔记
- 2018.08.21 bzoj4668: 冷战(并查集+启发式合并)
- Mysql中truncate table和delete语句的区别
热门文章
- spring boot跨域请求访问配置以及spring security中配置失效的原理解析
- 详解PHP中的三大经典模式
- MySQL查询-分组取组中某字段最大(小)值所有记录
- OI 经典诗歌
- 表格可拖拉列改变列大小(使用的时候将youElement全部替换称你要添加这个效果的元素,需是jqery的选择器格式,如:$(";table th/td";))
- NLP-BM25算法理解
- lenovo ubuntu18.04 找不到网络适配器
- SqlServer2005 查询 第三讲 between
- CGI、FastCGI、CLI、Apache、ISAPI之PHP运行环境对比
- lqb 基础练习 数列排序 (sort的使用)