无法使用nginx反向代理设置预览Wordpress草稿

时间:2017-04-20 12:14:44

标签: wordpress nginx reverse-proxy

尝试预览草稿时,我收到Wordpress错误:

Sorry, you are not allowed to preview posts.

我的安装有点独特:

  • 我的主要网络应用程序由nginx在一台服务器(primary.com)上提供服务
  • 我的Wordpress安装由另一台服务器(blog.com)上的apache提供服务
  • 我的nginx配置将第一台服务器上的所有/blog流量代理到Wordpress服务器

nginx反向代理配置如下所示:

  location /blog {
   proxy_set_header Host $host;
   proxy_set_header X-Real-IP $remote_addr;
   proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
   proxy_set_header X-Forwarded-Proto $scheme;
   proxy_pass https://blog.com:443;
   proxy_connect_timeout        300;
   proxy_send_timeout           300;
   proxy_read_timeout           300;
   send_timeout                 300;
   proxy_redirect off;
  }

在我的wp-config.php文件中,我定义:

define('FORCE_SSL_ADMIN', true);
if (strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false)
    $_SERVER['HTTPS']='on';

define('WP_SITEURL', 'https://blog.com');
define('WP_HOME', 'https://primary.com/blog');

除了预览草稿外,一切似乎都很有效。其他Stackoverflow答案提到将WP_SITEURLWP_HOME设置为同一个URL可以解决问题,但这不是我的反向代理情况的可行解决方案。

非常感谢任何帮助 - 谢谢!

0 个答案:

没有答案