CentOS 7 Nginx部署.NET Core Web应用
部署.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
CentOS 7 Nginx部署.NET Core Web应用的更多相关文章
- 2017-03-05 CentOS中结合Nginx部署dotnet core Web应用程序
Visual Studio Live 倒计时2天,当然这是美国倒计时两天,中国应该是在3月8日的凌晨,正值"3.8妇女节".提前祝广大的女性同志节日快乐,当然还有奋斗在一线的程序媛 ...
- 在CentOS 8 上 部署 .Net Core 应用程序
在Centos 8 上 部署 .Net Core 应用程序 -- 记录篇 1.更新dnf 源 1 dnf update 2.安装 Asp.Net Core 运行时 1 dnf install ...
- CentOS Mono Nginx 部署 MVC4+WebApi
CentOS Mono Nginx 部署 MVC4+WebApi 经过几天的折磨,终于在CentOS上成功部署了MVC4+WebApi.Mono上的服务器推荐两种:Jexus(国产高人写的一款很牛的服 ...
- Ubuntu 下使用 Nginx 部署 .NET Core 2.0 网站
前言 本文介绍如何在 Ubuntu 16.04 服务器上安装 .NET Core 2.0 SDK.创建项目与发布,并使用 Nginx 部署 .NET Core 2.0 Web 项目. 安装 .NET ...
- 怎么部署 .NET Core Web项目 到linux
.NET Core is free, open source, cross platform and runs basically everywhere. STEP 0 - GET A CHEAP H ...
- nginx 部署 .net core 获取的客户端ip为127.0.0.1
采用nginx和.net core 部署一套api接口到服务器上,发现获取到的ip地址为127.0.0.1 经过检查发现,需要在nginx配置上以下参数 proxy_set_header Host $ ...
- k8s环境部署.net core web项目(docker本地仓库)
在之前的文档中,我们部署了.net core web在k8s环境下,达成了集群管理项目的目的.但是,由于是本地部署,需要在所有的node节点都拉取好镜像,这是非常麻烦的,为了只维护一份代码,同步更新. ...
- Nginx 部署多个 web 项目(虚拟主机)
1,创建 www 目录 2,在 www 目录下创建 test1 和 test2 目录,表示两个项目 3,test1 下创建 test1.html 4,test2 下创建 test2.html 5,配置 ...
- CentOS 30分钟部署 .net core 在线客服系统
前段时间我发表了一系列文章,开始介绍基于 .net core 的在线客服系统开发过程.期间有一些朋友希望能够给出 Linux 环境的安装部署指导,本文基于 CentOS 8.3 来安装部署.在本文中我 ...
随机推荐
- 深入理解Kafka必知必会(上)
Kafka的用途有哪些?使用场景如何? 消息系统: Kafka 和传统的消息系统(也称作消息中间件)都具备系统解耦.冗余存储.流量削峰.缓冲.异步通信.扩展性.可恢复性等功能.与此同时,Kafka 还 ...
- Java自动化测试框架-09 - TestNG之依赖注入篇 (详细教程)
1.-依赖注入 TestNG支持两种不同类型的依赖项注入:本机(由TestNG本身执行)和外部(由诸如Guice的依赖项注入框架执行). 1.1-本机依赖项注入 TestNG允许您在方法中声明其他参数 ...
- 《Effective Java》 读书笔记(九)使用try-with-resources 语句替代try-finally
这一点其实深有感触.话不多说,先上代码: static String firstLineOfFile(String path) { BufferedReader bufferedReader = nu ...
- Python进阶函数
一.函数的动态参数 之前我们说过了传参, 如果我们需要给一个函数传参, 而参数又是不确定的. 或者我给一个函数传很多参数, 我的形参就要写很多, 很麻烦, 怎么办呢. 我们可以考虑使用动态参数. 动态 ...
- Golang的json包
encoding/json encoding/json是官方提供的标准json, 实现RFC 7159中定义的JSON编码和解码.使用的时候需要预定义struct,原理是通过reflection和in ...
- CSPS模拟测试59
这场考得我心态爆炸......... 开场T1只会$n^{2}$,然后发现bfs时每个点只需要被更新一次,其他的更新都是没用的. 也就是说,我们可以只更新还没被更新的点? 于是我先YY了一个链表,发现 ...
- 原生JS实现单向链表
1.前言 用JS实现一个简单的单向链表,并完成相关的功能 2.功能说明 push(value):从链表尾部添加一个新的节点 insertAfer(value,item):向链表中的item节点之后插入 ...
- Helm 3 发布 | 云原生生态周报 Vol. 27
作者 | 墨封.元毅.冬岛.敖小剑.衷源 业界要闻 1.Helm 3 发布 美国时间 11 月 13 日,Helm 团队发布 Helm 3 第一个稳定版本.Helm 3 以 Helm 2 的核心特性为 ...
- LoadRunner具体流程
创建负载测试场景场景目标:模拟10个用户同时登陆.搜索航班.购买机票.查看航班路线并退出打开Controller并创建一个新场景1.打开HP LoadRunner2.打开Controller在Load ...
- Python连接SqlServer+GUI嵌入式——学生管理系统1.0
学生管理系统1.0 1.建学生数据库 2.数据库嵌入高级语言(Python) 3.界面设计 简化思路: 1.先通过SqlServer2012建立学生数据库,包括账号.密码,姓名.选课等信息 2.运用P ...