Ubuntu 上部署 .NET 项目并配置 HTTPS
在Ubuntu上部署.NET项目并配置HTTPS,你需要完成以下几个步骤:
-
安装基础环境:
- 首先更新系统包列表并安装必要的依赖,运行
sudo apt-get update && sudo apt-get install dotnet-sdk nginx
- 首先更新系统包列表并安装必要的依赖,运行
-
下载证书和密钥:
- 创建一个SSL证书,你可以通过Let’s Encrypt获取免费证书,或者购买自签名证书。将
.crt
和.key
文件上传到服务器。
- 创建一个SSL证书,你可以通过Let’s Encrypt获取免费证书,或者购买自签名证书。将
-
配置HTTPS支持:
- 使用Nginx作为HTTP反向代理,编辑
/etc/nginx/sites-available/default
或创建新的站点配置文件。添加以下内容,替换your_certificate_path
和your_private_key_path
:
server { listen 443 ssl; server_name your_domain.com; # 替换为你的域名 ssl_certificate /path/to/your.crt; ssl_certificate_key /path/to/your.key; location / { proxy_pass http://localhost:5000; # 如果你的.NET应用运行在本地5000端口 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; } }
- 使用Nginx作为HTTP反向代理,编辑
-
启动Nginx:
Bashsudo systemctl restart nginx
-
部署.NET应用:
- 将你的.NET Core应用程序复制到服务器的适当目录(如
/var/www/html
),然后运行应用(例如dotnet your_app.dll
)。
- 将你的.NET Core应用程序复制到服务器的适当目录(如
-
自动重启应用: 可能需要设置应用自动重启策略,如果使用的是Docker容器,可以考虑使用
systemd
或docker-compose
的restart选项。 -
验证HTTPS配置:
- 浏览器输入https://your_domain.com,检查是否显示绿色锁头,无错误消息则说明配置成功。