继上一篇, 我们确定在内网可以通过 “http://localhost:5000”,可以访问到站点后,接下来我们要配置“守护进程”,“Nginx公网80端口访问”

1. 守护进程配置

a) 创建kestrel-hellomvc.service 文件

sudo vim /etc/systemd/system/kestrel-hellomvc.service

b) 粘贴以下内容

[Unit]
Description=Example .NET Web API Application running on CentOS

[Service]
WorkingDirectory=/var/aspnetcore/hellomvc
ExecStart=/usr/local/bin/dotnet /var/aspnetcore/hellomvc/hellomvc.dll
Restart=always
RestartSec=10  # Restart service after 10 seconds if dotnet service crashes
SyslogIdentifier=dotnet-example
User=www-data
Environment=ASPNETCORE_ENVIRONMENT=Production

[Install]
WantedBy=multi-user.target

c) 保存配置文件

:wq

d) 通过systemctl 管理服务

#启动守护进程

sudo systemctl start kestrel-hellomvc.service

#开机启动

sudo systemctl enable kestrel-hellomvc.service

-------------------------------------------------------------

常用命令

#启动进程

systemctl start ???

#停止进程

systemctl stop ???

#重新加载

systemctl reload ???

#状态

systemctl status ???

#开机启动

systemctl enable ???

#禁止开机启动

systemctl disable ???

d) 测试

有看到这句就是运行中了

PS: “www-data”CentOS无此用户,记得要先创建好,分配好权限

sudo useradd –M –s /sbin/nologin www-data

sudo chown www-data:root /var/aspnetcore/hellomvc

2. Nginx配置

a) 安装 nginx

sudo yum install nginx

b) 启动 nginx

sudo systemctl start nginx

sudo systemctl enable nginx

c) 配置反向代理

sudo vim /etc/nginx/sites-available/default

erver {
    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;
    }
}

d) 重启反向代理

sudo systemctl reload nginx

e) 外网访问

PS: 如果访问不到,请检查防火墙是否开启,是否开放了80端口:

# 查看当前端口监听列表

netstat –tln

# 查看firewalld状态

sudo systemctl status firewalld

# 启动firewalld

sudo systemctl start firewalld

# 开机启动firewalld

sudo systemctl enable firewalld

# 查看80端口是否开放

firewall-cmd --query-port=80/tcp

# 开放80端口(—permanent 表示永久开放)

firewall-cmd --permanent --add-port=80/tcp

上一篇: .NET Core 部署到CentOS–1.创建项目,简单部署

下一篇: .NET Core 部署到CentOS–3.supervisord守护进

参考资料:

https://docs.microsoft.com/en-us/aspnet/core/publishing/linuxproduction

https://linux.cn/article-5926-1.html

.NET Core 部署到CentOS–2.创建守护进程, 通过Nginx公网访问的更多相关文章

  1. .NET Core 部署到CentOS–1.创建项目,简单部署

    开发环境:Windows 10,部署环境:阿里云 CentOS 7.3 1. 创建应用 1) 创建项目, 配置应用生成部署包 2) 配置项目 编辑project.json, 追加环境项, 选项可参考这 ...

  2. .NET Core 部署到CentOS–3.supervisord守护进

    1. 安装 sudo yum install python-setuptoolssudo easy_install supervisor 2. 配置 安装成功后,输入supervisord 会显示配置 ...

  3. ASP.NET Core Linux下为 dotnet 创建守护进程(必备知识)

    前言 在上篇文章中介绍了如何在 Docker 容器中部署我们的 asp.net core 应用程序,本篇主要是怎么样为我们在 Linux 或者 macOs 中部署的 dotnet 程序创建一个守护进程 ...

  4. ASP.ENT Core Linux 下 为 donet创建守护进程(转载)

    原文地址:http://www.cnblogs.com/savorboard/p/dotnetcore-supervisor.html 前言 在上篇文章中介绍了如何在 Docker 容器中部署我们的 ...

  5. Supervisor 为服务创建守护进程

    今天需要再服务上部署一个.net 方面的项目:当时开启服务的命令只能在前台执行:使用nohub CMD &等放在后台开启服务都会宕机:所以搜寻了Supervisor 这个解决办法,为服务创建守 ...

  6. 创建守护进程步骤与setsid() -- linux deamon进程

    原创:http://www.cnblogs.com/mickole/p/3188321.html 一,守护进程概述 Linux Daemon(守护进程)是运行在后台的一种特殊进程.它独立于控制终端并且 ...

  7. linux创建守护进程

    守护进程deamon 是一个后台进程,无需用户输入就能运行,用来在系统后台提供某种服务. 常见的守护进程有Wbe服务器.邮件服务器以及数据库服务器等等.守护进程不能控制终端,所以任何的输入和输出都需要 ...

  8. Python中创建守护进程

    python 创建守护进程 python 的os.setdid()提供了类似linux c api的 setsid 也可以通过unix双fork创建守护进程. 几个相关的函数 os.umask(0) ...

  9. linux 创建守护进程的相关知识

    linux 创建守护进程的相关知识 http://www.114390.com/article/46410.htm linux 创建守护进程的相关知识,这篇文章主要介绍了linux 创建守护进程的相关 ...

随机推荐

  1. Python中dataframe\ array\ list相互转化

    import pandas as pd import numpy as np #创建列表 a1=[1,2,3] #arange函数:指定初始值.终值.步长来创建数组 a2=np.arange(0,1, ...

  2. kuangbin专题16B(kmp模板)

    题目链接: https://vjudge.net/contest/70325#problem/B 题意: 输出模式串在主串中出现的次数 思路: kmp模板 在 kmp 函数中匹配成功计数加一, 再令 ...

  3. powershell 操作sharepoint命令集

    打开SharePoint 2013 Management Shell, and then run as administrator.执行如下命令 1. 添加wsp和安装Add-SPSolution - ...

  4. 在使用jquery时,(e.target).closest("li")是什么意思

    今天在群里有童鞋问以下代码中: $(function(){ $(document).bind("click", function (e) { $(e.target).closest ...

  5. CF671A Recycling Bottles 计算几何

    It was recycling day in Kekoland. To celebrate it Adil and Bera went to Central Perk where they can ...

  6. POJ1059 Chutes and Ladders

    题目来源:http://poj.org/problem?id=1059 题目大意: 有一种叫做“Chutes and Ladders”(梯子和滑梯)的简单游戏.游戏在一块棋盘上进行,棋盘上有编号从1- ...

  7. 执行umount 的时候却提示:device is busy 的处理方法

    [root@web2-server yum.repos.d]# umount /mnt/cdrom/ umount: /mnt/cdrom: device is busy. (In some case ...

  8. Diophantus of Alexandria

    Diophantus of Alexandria was an egypt mathematician living in Alexandria. He was one of the first ma ...

  9. Educational Codeforces Round 13 C

    Description Little Joty has got a task to do. She has a line of n tiles indexed from 1 to n. She has ...

  10. python 基础及if while for语句

    #####变量######一.命名规则   1.正常命名  可以由字母,下划线和数字组成,不能以数字开头,不能和关键字重明   2.驼峰命名法    1)大驼峰:每一个单词的首字母都大写     Fi ...