小编Jos*_*ael的帖子

使用 NGINX 作为 apache 的反向代理时,Wordpress 永久链接返回 404

我正在尝试让 NGINX 进行反向代理并为在端口 8086 上运行在 Apache 上的 WordPress 站点提供 SSL 终止。我希望 NGINX 处理静态文件,并仅将 PHP 请求代理到 Apache。

我已经成功地使用标准链接使其工作。(即https://example.com/?post=274工作正常)

当我启用任何类型的永久链接时,主页将加载,wp-admin 也是如此,但https://example.com/what-we-do/失败。

查看NGINX日志,我看到

2018/05/23 09:36:40 [error] 7472#0: *1 "/var/www/example.com/live_site/what-we-do/index.php" is not found (2: No such file or directory), client: xxx.xxx.xxx.xxx, server: example.com, request: "GET /what-we-do/ HTTP/2.0", host: "example.com", referrer: "https://example.com/?post=274"
Run Code Online (Sandbox Code Playgroud)

所以 NGINX 试图寻找 /permalink/index.php 作为静态路径/文件而不是传递给 apache。关于如何让它发挥作用的任何想法?

我的 NGINX 配置看起来像:

upstream example_apache {
    ip_hash;
    server 127.0.0.1:8086;
}

server {
# HTTP/HTTPS Server Block
# General Config
    listen                      [::]:80;
    listen                      80; …
Run Code Online (Sandbox Code Playgroud)

php apache wordpress nginx nginx-reverse-proxy

6
推荐指数
1
解决办法
1743
查看次数

标签 统计

apache ×1

nginx ×1

nginx-reverse-proxy ×1

php ×1

wordpress ×1