Nginx反向代理Apache下的wordpress问题记录

最近在配置Nginx的反向代理,通过反向代理访问到Apache下的wordpress。

在配置ssl的过程中出现了图片无法显示及页面布局混乱的问题,在这里记录一下,以作备忘,仅供参考

ssl配置过程在其他文章中记录,这里不再赘述,仅记录反向代理页面显示不正常问题的解决方法。

经过实际测试,下面的代码是维持wordpress正常显示的Nginx端最精简的配置

Nginx端

Nginx.conf配置

#配置将http自动跳转到https

server {
listen 80;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name www.danielw7.com;
ssl_certificate *.pem;#这里要加上ssl对应的pem文件的绝对路径
ssl_certificate_key *.key;#这里是.key文件的绝对路径
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;

    #charset koi8-r;

    #access_log  logs/host.access.log  main;

    location / {
     
            #定义反向代理x.x.x.x:port为要代理的地址和端口
            proxy_pass http://x.x.x.x:port/;
           #实测这段代码缺失会导致显示乱码
            proxy_set_header X-Forwarded-Proto https;
            
    }

Apache端配置:

搜索的时候看到网上有很多要配置wp-config.php文件的说法,但个人测试没有调整wp-config.php也可以正常访问

但是必须更改数据库wp-options表中的内容配合上面的Nginx配置才能正常显示,这里是我更改的内容,将siteurl和home都更改为了http://www.danielw7.com:8080,之后即可正常访问

这是个人部署过程的碰到的一个问题及个人的处理方案,可能不一定适用于其他的地方,仅供参考

有其他的方案也欢迎留言讨论

Comments Closed.