如何解决Wordpress Static 使用 HTTP 而不是 HTTPS
我在 docker 容器中有一个 WordPress 服务器。 WordPress 正在运行,其中包含一个 nginx 服务器。当我完成初始安装阶段时,css(和其他文件)运行良好。但是当我加载主站点时,这些资源重定向到 HTTP://example.com/blogs/... 而不是 HTTPS。
以下是检查中的 URL:
https://example.com/blogs/
http://example.com/blogs/wp-includes/js/wp-emoji-release.min.js?ver=5.1.1
这是我在 example.com 上的 Nginx 配置:
location /blogs/ {
proxy_pass HTTP://localhost:8080/;
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_read_timeout 1800s;
}
我已经用以下信息更新了 wp-config.php 文件
define('WP_HOME','https://example.com/blogs/');
define('WP_SITEURL','https://example.com/blogs/');
$_SERVER['REQUEST_URI'] = '/blogs' . $_SERVER['REQUEST_URI'];
如果您需要更多信息,请告诉我。
--- 更新 #1 ---
Nginx 服务器块
server {
root /var/www/html;
index index.php index.html index.htm;
server_name example.com; # managed by Certbot
location /blogs/ {
proxy_pass HTTP://localhost:8080/;
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_read_timeout 1800s;
}
listen [::]:443 ssl ipv6only=on; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # :managed by Certbot
if ($scheme != https) {
return 301 https://$host$request_uri;
}
}
server {
if ($host = example.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80 ;
listen [::]:80 ;
server_name example.com;
return 404; # managed by Certbot
}
解决方法
如果 siteurl
和 home
也设置了 https,请检查 wp_options 表。
假设您的域有一个服务器块,请确保您的服务器块中有这些行以将所有非 https 请求重定向到 https:
server {
listen 80;
listen 443 ssl http2;
server_name example.com www.example.com;
the rest of your code
if ($scheme != https) {
return 301 https://example.com$request_uri;
the rest of your code
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。