7

我在 MVC Core 中创建了一个网站,并尝试在 CentOS 7 VPS 上将其发布到网络上。它运行良好,当我卷曲它时它会响应。然后我安装了 nginx 并在我的计算机上尝试时显示了默认页面。然后我将 nginx.conf 更改为以下,我得到的只是 502 bad gateway。在 nginx 日志中,我只看到收到了一个获取请求。任何想法我应该检查什么?

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

# Load dynamic modules. See /usr/share/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;

events {
    worker_connections 1024;
}

http {
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
    access_log  /var/log/nginx/access.log  main;

    sendfile            on;
    tcp_nopush          on;
    tcp_nodelay         on;
    keepalive_timeout   65;
    types_hash_max_size 2048;

    include             /etc/nginx/mime.types;
    default_type        application/octet-stream;

    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
  #   include /etc/nginx/conf.d/*.conf;
     server {
        listen 80;
        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;
        }
     } 
}
4

1 回答 1

10

我尝试了apache并遇到了同样的问题。然后我找到了解决方案,你必须设置 httpd_can_network_connect。

http://sysadminsjourney.com/content/2010/02/01/apache-modproxy-error-13permission-denied-error-rhel/

A 没有在作者所说的审计博客中找到错误消息,但我尝试了他的解决方案并且它有效。

我已经使用 centos 4 天了,这是我第二次需要设置一点来解决问题。这些解决方案非常隐藏在网络中,大多数涉及该领域的文章都没有提到这些,所以我浪费了很多时间。所以我同意作者对 SELinux 的看法。可能我会尝试另一个 linux 发行版。有趣的是,我遵循了官方的 microsoft 教程“使用 Apache 在 Linux 上为 ASP.NET Core 设置托管环境并部署到它”。他们使用的操作系统也是CentOS。它也没有提到这一点。

于 2017-07-10T06:51:08.133 回答