WordPress使用Nginx做反向代理的SSL设置

+1 投票
51 浏览
最新提问 11月 8, 2017 分类:WordPress | 用户: 匿名

nginx在前面提供ssl服务,并反向代理到内网的WordPress,WordPress在内网不配置ssl,使用http和nginx通信。

# WordPress配置
在wd-config.php文件中加入以下配置,必须在wp-settings.php的配置之前。nginx告诉WordPress所使用的协议(https),WordPress才能把所有页面内置的链接改成响应的协议(https)

/** 反向代理设置 */
define('FORCE_SSL_ADMIN', true);

// in some setups HTTP_X_FORWARDED_PROTO might contain
// a comma-separated list e.g. http,https
// so check for https existence
if (strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false)
       $_SERVER['HTTPS']='on';

/** 设置WordPress变量和包含文件。 */
require_once(ABSPATH . 'wp-settings.php');
 

# nginx配置
需要在提供ssl服务的反向代理部分加入以下配置,告诉WordPress使用的协议。

proxy_set_header X-Forwarded-Proto $scheme;
 

参考来源:

https://codex.wordpress.org/Administration_Over_SSL
https://wordpress.org/support/topic/compatibility-with-wordpress-behind-a-reverse-proxy/

1个回答

0 投票
最新回答 2月 2 用户: 小九
绝对的干货...........
欢迎来到 Websoft9知乎 ,有什么不懂的可以尽管在这里提问,你将会收到社区其他成员的回答。
...