标签:dir sign 网站 strong bin cst 成功 always 地址
我用的是Ubuntu服务器器 [Ubuntu 18.04 x64] 和终端管理工具【Xshell】
在服务器上安装.NET Core
1、创建实例程序
可以直接使用.NET Core 的命令创建一个ASP.NET Core 示例网站应用程序,创建目录 /home/myuser/firstapp,执行命令:
dotnet new mvc
接着,发布刚才创建的ASP.NET Core 网站发网站目录,所以,我们先创建一个网站发布目录:/var/www/firstapp,运行dotnet发布命令:
dotnet restore
dotnet publish -c release
dotnet命令将把ASP.NET Core 2.0 示例网站发布到目录:/home/myuser/firstapp/bin/release/netcoreapp2.0/publish/ 中,拷贝发布后的ASP.NET Core 2.0网站程序:
scp -r /home/myuser/firstapp/bin/release/netcoreapp2.0/publish/* /var/www/firstapp
2、或者拿自己创建的程序发布后 拷贝至服务器上。
将发布后的publish目录下的文件拷贝至一个网站发布目录
我们需要配置 systemd
来让 dotnet core程序
成为一个服务并启动。创建服务文件:
sudo vim /etc/systemd/system/myApp.service
编辑内容如下:
[Unit]
Description=My ASP.Net Core Project
[Service]
WorkingDirectory=/var/www/firstapp
ExecStart=/usr/bin/dotnet /var/www/firstapp/firstapp.dll
Restart=always
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=dotnet-firstapp
User=myuser
Environment=ASPNETCORE_ENVIRONMENT=Production
Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false
[Install]
WantedBy=multi-user.target
启用并启动服务
sudo systemctl enable myApp.service # 注册服务
sudo systemctl start myApp.service # 启动服务
sudo systemctl status myApp.service # 检查服务的运行状态
现在,我们的示例网站就可以通过5000端口在服务器端访问了,在终端使用w3m命令:
w3m http://localhost:5000
说明我们的ASP.NET Core 网站应用程序在linux服务器上配置成功了。
但是,这个示例程序现在还只能在服务器中访问,外网是不能访问的。
sudo apt-get install nginx
使用 vim 配置nginx的服务配置
sudo vim /etc/nginx/sites-available/default
将nginx的配置替换成如下的配置:
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;
}
}
或者
server {
listen aa.xx.yy.zz:80; //服务器内网地址
server_name aa.xx.yy.zz; //服务器内网地址
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;
}
}
现在你的ASP.NET Core 网站可以通过外网ip访问了,如果你还想让你的网站支持通过域名访问,那nginx中配置也是非常简单的:
server {
listen 80;
server_name www.your_domain_name.com;
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;
}
}
其中:www.your_domain_name.com 即为你的域名,修改配置后,重新加载nginx配置:
systemctl reload nginx
ASP.NET Core 2.1发布/部署到Ubuntu并配置Nginx反向代理实现ip访问
标签:dir sign 网站 strong bin cst 成功 always 地址
原文地址:https://www.cnblogs.com/peterYong/p/12249938.html