asp.net core2部署到Centos上

本文详细介绍了如何在CentOS上安装Nginx并配置其与ASP.NET Core应用的集成,包括Nginx的基本安装步骤,.NET Core SDK的下载与安装,以及如何部署ASP.NET Core项目并通过Nginx映射端口实现访问。

安装nginx

指导安装地址:https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-centos-7 

第一步:添加CentOS 7EPEL  库

打开终端,使用下面的命令

sudo yum install epel-release

第二步:安装Nginx

现在Nginx知识库安装在您的服务器上,使用下面的yum命令安装Nginx

sudo yum install nginx

你回答“yes”的提示后,nginx会完成安装到你的虚拟专用服务器(VPS)

第二步:启动Nginx

 Nginx不自己启动。输入以下命令让nginx的运行:

sudo systemctl start nginx

启动完成之后我们就可以用CentOS的IP和80端口访问Nginx了

如果无法访问,说明还是有问题

If you are running a firewall, run the following commands to allow HTTP and HTTPS traffic(如果您正在运行防火墙,请运行以下命令以允许HTTP和HTTPS通信)

sudo firewall-cmd --permanent --zone=public --add-service=http 
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

这时候再次访问80端口

 

 

下载.NET Core SDK

下载地址:https://www.microsoft.com/net/download/windows

第一步:Add the dotnet product feed(添加dotnet产品)

To start installing .NET, you'll need to register the Microsoft signature key and add the Microsoft Product feed. This only needs to be done once per machine.Open a command prompt and run the following commands(要开始安装.NET,您需要注册微软签名密钥并添加微软产品提要。这只需要每台机器做一次。打开命令提示符并运行以下命令)

sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
sudo sh -c 'echo -e "[packages-microsoft-com-prod]\nname=packages-microsoft-com-prod \nbaseurl= https://packages.microsoft.com/yumrepos/microsoft-rhel7.3-prod\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/dotnetdev.repo'

第二步:Install the .NET SDK(安装.NET SDK)

 Update the products available for installation, install the components required by .NET, then install the .NET SDK.(更新产品可用于安装组件的安装,然后安装所需的.NET,.NET SDK。)

sudo yum update
sudo yum install libunwind libicu
sudo yum install dotnet-sdk-2.1.200

 安装成功

 

部署core项目

  先创建一个项目文件夹

mkdir /www/Demo1/

   利用Xhell的ra命令把项目发布出来的文件上传上去。

 

#进入到站点目录
cd /www/Demo1/

#启动网站
dotnet TestAspNetCoreWeb.dll
$ 如果报错Failed to bind to CoreCLR,运行yum install -y libunwind 和 yum install -y icu

启动成功,可以访问http://192.168.57.7:8080打开了。如果8080端口被占用,则可以在项目中设置其他端口。可以在Program.cs类的BuildWebHost中设置:   .UseUrls("http://*:8081")。改成自己制定的端口。

Nginx映射端口

进入nginx安装目录 cd /etc/nginx

进入nginx安装目录 cd /etc/nginx

查看nginx.conf

可以看到默认是吧所有的*.conf文件引入进来的

刚开始有默认的80端口的配置,我们要把它注释掉

注释后

这时候进入conf.d文件夹发现里面并没有任何文件

 

这时候我们创建一个netcore.conf文件,将80端口对5000对口进行转发

 

复制代码
server {
    listen       80;
    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;
    }
}
复制代码

 配置完成之后执行 nginx -s reload 或者 systemctl restart nginx 进行重启nginx

然后访问80端口。

使用Supervisor对ASP.NET Core网站应用进行监控,使网站可以持续运行,不然退出Shell后网站就停止了。

其他参考:

https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/linux-nginx?view=aspnetcore-2.0&tabs=aspnetcore2x

http://www.cnblogs.com/wyt007/p/8040715.html

转载于:https://www.cnblogs.com/LonelyCode/p/9070097.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值