WordPress配置之前的nginx导致“由于可能的配置错误,请求超出了10个内部重定向的限制。”

时间:2018-09-28 18:52:28

标签: wordpress nginx

我有一个站点https://example.com在AWS EC2的实例1上运行: nginx + wildfly应用服务器

一切正常。 Nginx代理传递给Wildfly。 Https已配置。

我想设置在不同EC2实例上运行的wordpress,以便可以通过https://example.com/blog

访问它

我为WordPress设置了专用实例,并使用docker compose启动了wordpress,如下所述:https://docs.docker.com/compose/wordpress/ 我配置了作曲器,因此可以通过该实例上的80端口访问wordpress。

我将ngnix配置如下:

server {
    listen       443 ssl http2 default_server;
    listen       [::]:443 ssl http2 default_server;
    server_name  <server_name>;
    root         /usr/share/nginx/html;

    ssl_certificate "/etc/ssl/certs/<path_to_cert>/ssl-bundle.crt";
    ssl_certificate_key "/etc/ssl/certs/<path_to_cert>/private.key";
    ssl_session_cache shared:SSL:1m;
    ssl_session_timeout  10m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:SEED:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!RSAPSK:!aDH:!aECDH:!EDH-DSS-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA:!SRP;
    ssl_prefer_server_ciphers on;

    include /etc/nginx/default.d/*.conf;

    # main site, deployed on same instance as nginx
    location / {
            proxy_pass http://127.0.0.1:8080;
    }

    # wordpress, deployed on other instance
    location /blog/ {
            proxy_pass http://<my_wordpress_instance_local_ip>/;
            proxy_set_header X-Forwarded-Proto $scheme;
    }

    error_page 404 /404.html;
        location = /40x.html {
    }
    error_page 500 502 503 504 /50x.html;
        location = /50x.html {
    }
}

我安装了wordpress(使用直接访问它),并将WordPress地址(URL)和站点地址(URL)配置为“ https://example.com/blog”。

现在,我可以正常访问管理员和主页https://example.com/blog。但是,当我单击以查看测试“ Hello World”帖子(URL:https://example.com/blog/2018/09/28/hello-world/)时,出现500 Internal Server错误。

我查看了wordpress docker日志,发现以下错误: “ [[Fri Sep 28 18:17:25.721177 2018] [core:error] [pid 308] [client:47792] AH00124:由于可能的配置错误,请求超出了10个内部重定向的限制。请使用'LimitInternalRecursion'增加限制如有必要,请使用“ LogLevel调试”获取回溯。引荐来源:https://example.com/blog/

我该如何解决? 免责声明:我在nginx方面没有丰富的经验,在wordpress方面没有经验,所以对可能是愚蠢的问题感到抱歉。我尝试了在Internet上找到的其他选项,但是所有这些选项要么都不起作用,要么描述了手动wordpress设置(不是通过标准的docker image)。

更新

  1. 我更新了nginx conf的描述:现在提供了整个配置;

  2. 我的Wordpress永久链接设置为“日期和名称”。我尝试了所有这些方法,发现如果我切换到“普通格式”,则一切正常。所有其他设置都会导致错误。显然,“简单”对我不起作用,我想继续做一些比这更好的事情。

1 个答案:

答案 0 :(得分:0)

我发现以下答案可以解决此问题:

https://stackoverflow.com/a/4521620/2033394

虽然,这将需要修改图像。因此这不是最好的方法,但是它可以使一切正常工作。