gpt4 book ai didi

asp.net-core - 无法在 AWS EC2 Ubuntu 上运行 ASP.NET Core 应用程序

转载 作者:行者123 更新时间:2023-12-04 19:29:57 30 4
gpt4 key购买 nike

尝试了许多分步指南,但仍然无法从 AWS EC2 在 Ubuntu Linux 20.4 上运行非常简单的 ASP.NET Core 5.0
我做了什么:
为实例配置的入站规则:
80 TCP 0.0.0.0/0
80 TCP::/0
22 TCP 0.0.0.0/0
443 TCP 0.0.0.0/0
443 TCP::/0
在实例上安装了 Dotnet SDK
安装 NGINX
使用这些设置配置 NGINX

server {
listen 80;
server_name localhost;
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;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
这个配置文件的语法是正确的
重新加载 NGINX
NGINX 的状态是 Active/Running
当我运行应用程序时,它会显示这个
enter image description here
所以,它表明它是好的并且正在听 5000/5001
最后,当我尝试通过 ip 访问浏览器中的实例时,如下所示:
http://33.333.333:80
在控制台中我看到了这个:
enter image description here
但应用程序没有进入浏览器 - 我看到 ERR_CONNECTION_TIMED_OUT 并且页面被重定向到 https://3.33.33.333:**5001**/
在 Startup.cs 的 Configure 方法中,一开始我有这个: app.UseForwardedHeaders(new ForwardedHeadersOptions { ForwardedHeaders = ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto });因此,来自浏览器的请求肯定会到达服务器,但其余的都不起作用。
我错过了哪一步?

最佳答案

我假设您的目标是启用对他的应用程序的 HTTPS/TLS 访问。我可以提供 2 个级别的响应:

  • 如果没有 nginx,一切都可以在端口 5000 和 5001 上正常运行。您尝试运行 wget https://localhost:5001 --no-check-certificate 的结果证实了这一点。 ,这是成功的(证书信任问题除外)。

  • 因此,要在没有 nginx 的情况下运行应用程序,将 ASP.NET Core 配置文件中的端口更改为 80 和 443 并解决 TLS 证书信任问题似乎就足够了。要了解有关开发证书的更多信息,请参阅 Microsoft Docs 以获取有关 development certificates for ASP.NET Core 的信息。 .同时,从问题看来,您需要刷新有关 HTTPS、TLS 和证书信任问题的一般理论。
  • 出于某种原因,您希望在设置中包含 nginx。在这种情况下,您需要考虑以下项目:
  • 可能重新考虑您的设计选择:哪个组件(nginx 或应用程序)负责将用户从端口 80 重定向到端口 443?这可以在 nginx 上完成,并将从您的应用程序中消除这个问题。
  • 在 nginx 配置文件中启用代理从端口 443 到 5001 的请求。您问题中包含的 nginx.conf 文件不包含必要的指令。
  • 使用 nginx 配置文件配置受信任的 TLS 证书。信任问题是一个广泛的问题,答案取决于您正在创建的部署目标。是用于开发、测试还是生产?
  • 关于asp.net-core - 无法在 AWS EC2 Ubuntu 上运行 ASP.NET Core 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67556886/

    30 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com