代码之家  ›  专栏  ›  技术社区  ›  Praveen Rai

ASP.Net在Ubuntu上只监听端口5000的核心应用程序服务

  •  3
  • Praveen Rai  · 技术社区  · 6 年前

    我想主持一个ASP.NetUbuntu服务器上的核心MVC应用程序(启用了https重定向),使用Nginx作为反向代理。我已经使用OpenSSL创建并安装了一个本地SSL证书。当我使用dotnetcli运行我的应用程序时,它监听两个端口 http://localhost:5000 https://localhost:5001

    问题是,当我尝试将作为服务运行时,它只监听 .

    以下是*.service文件:

    [Unit]
    Description=Test ASP.Net core web application service.
    
    [Service]
    WorkingDirectory=/home/ubuntu/MyAppFolder
    ExecStart=/usr/bin/dotnet/home/ubuntu/MyAppFolder/MyApplication.dll
    Restart=always
    # Restart service after 10 seconds if the dotnet service crashes:
    RestartSec=10
    SyslogIdentifier=MyApplication
    User=www-data
    Environment=ASPNETCORE_ENVIRONMENT=Development
    Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false
    Environment=ASPNETCORE_HTTPS_PORT=5001
    Environment=ASPNETCORE_URLS=http://localhost:5000;https://localhost:5001
    
    [Install]
    WantedBy=multi-user.target
    

    环境详细信息 : ASP.Net核心2.1.1,ASP.Net核心SDK 2.1.3、Nginx 1.14、Ubuntu 16.04

    1 回复  |  直到 6 年前
        1
  •  10
  •   Praveen Rai    6 年前

    我终于弄明白了问题所在。问题是开发人员ssl证书与名为localhost的dotnet SDK一起安装。对于Ubuntu,证书位于/home/{user name}/.dotnet/corefx/cryptography/x509stores/my

    为了让它工作,我首先在PEM中转换了我现有的证书( .crt)格式转换为PKCS12( .pkf)。下面是命令。

    sudo openssl pkcs12 -export -out certificate.pfx -inkey privateKey.key -in certificate.crt -certfile more.crt
    

    然后我需要使用appsettings.json文件文件。下面是文件现在的外观:

    {
      "ConnectionStrings": {
        "PostgresConnection": "Host=localhost; Database=postgres; Username=postgres; Password=xyz123"
      },
      "Logging": {
        "IncludeScopes": false,
        "LogLevel": {
          "Default": "Warning"
        }
      },
    
      "Kestrel": {
        "Endpoints": {
          "HTTPS": {
            "Url": "https://localhost:5001",
            "Certificate": {
              "Path": "/etc/ssl/certs/<certificate.pfx>",
              "Password": "xyz123"
            }
          }
        }
      }
    }
    

    sudo usermod -aG ssl-cert www-data
    
    推荐文章