Ubuntu 上部署 .NET 项目并配置 HTTPS

在Ubuntu上部署.NET项目并配置HTTPS,你需要完成以下几个步骤:

  1. 安装基础环境:

    • 首先更新系统包列表并安装必要的依赖,运行sudo apt-get update && sudo apt-get install dotnet-sdk nginx
  2. 下载证书和密钥:

    • 创建一个SSL证书,你可以通过Let’s Encrypt获取免费证书,或者购买自签名证书。将.crt.key文件上传到服务器。
  3. 配置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;
        }
    }
  4. 启动Nginx:

    Bash
     
    sudo systemctl restart nginx
  5. 部署.NET应用:

    • 将你的.NET Core应用程序复制到服务器的适当目录(如/var/www/html),然后运行应用(例如dotnet your_app.dll)。
  6. 自动重启应用: 可能需要设置应用自动重启策略,如果使用的是Docker容器,可以考虑使用systemddocker-compose的restart选项。

  7. 验证HTTPS配置:

    • 浏览器输入https://your_domain.com,检查是否显示绿色锁头,无错误消息则说明配置成功。