Nginx反代wordpress的正确方法

nginx 的 nginx.conf 配置如下:

 

location /wiki/ {

proxy_pass http://192.168.0.299/;

proxy_set_header Host $http_host;

proxy_set_header X-Forwarded-Host $http_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_busy_buffers_size 512k;

proxy_buffers 4 512k;

proxy_buffer_size 256k;

}

 

设置 wordpress的 wp-config.php

define('WP_HOME','https://www.abc.com/wiki');

define('WP_SITEURL','https://www.abc.com/wiki');

if ($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') {

$_SERVER['HTTPS']='on';

$_SERVER['REQUEST_URI'] = "/wiki".$_SERVER['REQUEST_URI'];

}

if (isset($_SERVER['HTTP_X_FORWARDED_HOST'])) {

$_SERVER['HTTP_HOST'] = $_SERVER['HTTP_X_FORWARDED_HOST'];