配置服务器主程序
修改配置文件
将服务端程序上传之前,可先在本地电脑完成对配置文件的修改。
也可以选择先把服务端程序上传后,再通过 vim 手工对配置文件修改。
配置 Nginx
注意:服务端程序使用 5000 端口作为反向代理,请勿占用此端口。
编辑 nginx 配置文件
vim /usr/local/nginx/conf/nginx.conf
在 Server 节点 平级 添加如下内容
注意server_name
处替换为你所使用的域名。map $http_upgrade $connection_upgrade { default upgrade; '' close; } upstream dotnet_server_proxy { server localhost:5000; keepalive 2000; } server{ listen 80; listen [::]:80; server_name kf-api.yourname.com; location / { proxy_pass http://dotnet_server_proxy; 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; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; } }
重新加载 nginx 配置文件
cd /usr/local/nginx/sbin
./nginx -s reload
配置主程序
进入
cd /lib/systemd/system/
创建文件
vim kfServer.service
输入以下内容后保存退出
注意WorkingDirectory
为您的 Server 目录[Unit] Description=kfServer service After=network.target [Service] Type=simple GuessMainPID=true WorkingDirectory=/wwwroot/Server/ StandardOutput=journal StandardError=journal ExecStart=/usr/local/bin/dotnet Sheng.Linkup.Server.dll & Restart=always [Install] WantedBy=multi-user.target
注意:在 CentOS 8 中,ExecStart 后无需要输入完整路径,如
ExecStart=dotnet Sheng.Linkup.Server.dll &
注意:通过终端工具复制粘贴文本可能会因为编码或换行符等问题导致服务无法启动。
如果遇到不明原因的服务无法启动问题,删除 kfServer.service 文件重建,手工编辑内容再试。启动服务器主程序
systemctl start kfServer.service
设置开机启动
systemctl enable kfServer.service
查看运行状态
systemctl status kfServer.service
显示绿色的 active(running) 表示启动成功。
如需重新启动服务器主程序,可使用命令
systemctl restart kfServer.service
。
在修改了主程序配置文件后,需要重新启动以生效。
初始化主程序
- 访问域名,进入 Status 查看状态
https://kf-api.yourname.com/Status
注意:直接访问域名显示 404 是正常的,主程序没有默认页面,请留意上面的示例网址,进入
Status
命令
请确认已经完成了对服务器主程序配置文件的配置。
参阅:使用自动化工具配置服务器端程序
- 初始化数据
访问域名,进入Status/Setup
命令
如:https://kf-api.yourname.com/Status/Setup
常见问题
启动时提示错误无法正常访问主程序。
在命令行进入 Server 目录,执行:dotnet Sheng.Linkup.Server.dll
通过输出,可以初步判断启动失败原因,如图所示为数据库连接串没有配置,请检查配置文件。
注意:主程序配置文件 appSettings.json 修改后,必须重新启动站点和应用程序池才会生效。