分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 技术分享

.net core部署到Ubuntu

发布时间:2023-09-06 02:04责任编辑:赖小花关键词:暂无标签

1.使用vs2017创建Asp.net Core Web应用程序,选择ubuntu中安装的.net core版本,这里选择2.1版本:

2.右键发布该项目,选择文件系统发布:

3.在ubuntu中安装vsftpd(Ubuntu安装vsftpd并通过xftp连接),并通过xftp将发布的publish目录上传到ubuntu服务器,也可以通过ftp直接发布到ubuntu,需要配置vsftpd,配置项比较多,可以参考:FTP服务器vsftpd配置详解

4.执行dotnet WebApp.dll,然后就可以在浏览器打开localhost:5000(5000为默认端口,如果有修改,请使用实际端口)但是现在还不能通过ip访问,这就需要Nginx实现

5.通过命令安装nginx(相当于linux下的iis)

sudo apt-get install nginx

然后配置nginx的代理转发,修改/etc/nginx/sites-available/default,修改内容如下

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

sudo nginx -tsudo nginx -s reload

6.通过nginx实现了通过IP访问,然而,重启后我们会发现网站并没有开机启动,这个时候就需要Supervisor了

安装supervisor

sudo apt-get install supervisor

安装完成之后,在 /ect/supervisor/confg.d/ 目录下新建一个配置文件,取名为 WebApp.conf 

编辑该配置文件

vi WebApp.conf

修改为:

[program:WebApp]command=dotnet WebApp.dll #要执行的命令directory=/dotnetcoreWebApp #命令执行的目录environment=ASPNETCORE__ENVIRONMENT=Production #环境变量user=www-data #进程执行的用户身份stopsignal=INTautostart=true #是否自动启动autorestart=true #是否自动重启startsecs=1 #自动重启间隔stderr_logfile=/var/log/WebApp.err.log #标准错误日志stdout_logfile=/var/log/WebApp.out.log #标准输出日志

重启supervisor

sudo service supervisor restart

这个时候重启机器,通过ip地址也可以访问了

7.如果是非本机访问ip,需要将80端口加到防火墙例外

sudo ufw allow 80/tcp

.net core部署到Ubuntu

原文地址:https://www.cnblogs.com/xienb/p/9328159.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved