解决Nginx+wordpress无限重定向的问题

博主之前使用docker搭建了wordpress之后,打算使用Nginx做反向代理,同时开启https,但是一通配置之后却死活打不开网站,并且会疯狂重定向。一开始以为是我的Nginx配置不对导致,经过反复试验依然无法解决。突然灵光一闪,会不会是wordress自身的问题?

 

博主之前使用docker搭建了wordpress之后,打算使用Nginx做反向代理,同时开启https,但是一通配置之后却死活打不开网站,并且会疯狂重定向。一开始以为是我的Nginx配置不对导致,经过反复试验依然无法解决。突然灵光一闪,会不会是wordress自身的问题?

 

Nginx配置

通过Nginx监听443端口,转发到wordpress端口上,配置上非常简单

server {
  server_name your_domain;
  listen 443 ssl http2;
  ssl_certificate /opt/www/cert/ssl.cer;
  ssl_certificate_key /opt/www/cert/ssl.key;
  ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
  access_log /opt/www/log/domain.access.log;
  error_log /opt/www/log/hldomainab.error.log;
  location / {
    proxy_pass http://127.0.0.1:10081;
    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-Host $http_host;
    proxy_set_header X-Forwarded-Port $server_port;
    proxy_set_header X-Forwarded-Proto $scheme;
  }
}

 

wordpress

按照上面的配置,正常来说就可以了,但是wordpress却不行,那是因为wordpress本身还需要开启SSL才行。

  • 打开wordpress安装目录下的wp-config.php文件
  • 在其中加入代码
    ## 加入下面3行代码
    $_SERVER['HTTPS'] = 'on';
    define('FORCE_SSL_LOGIN', true);
    define('FORCE_SSL_ADMIN', true);
    /* That's all, stop editing! Happy publishing. */
    /** Absolute path to the WordPress directory. */
    
    if ( ! defined( 'ABSPATH' ) ) {
            define( 'ABSPATH', __DIR__ . '/' );
    }
    

    注意必须加在if ( ! defined( 'ABSPATH' ) ) {上面

  • 然后重启页面,刷新下浏览器就可以了

 

原创文章,作者:诺多,如若转载,请注明出处:https://www.huluohu.com/posts/119/

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022年3月14日 01:45
在Mac上使用nvm管理Nodejs版本
下一篇 2022年3月14日 01:49

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注