簡體   English   中英

Wordpress Static 去 HTTP 而不是 Z0E8433F9A404F1F3BA601C14B026D321

[英]Wordpress Static going to HTTP instead of HTTPS

我在 docker 容器內有一個 WordPress 服務器。 WordPress 在內部運行 nginx 服務器。 當我通過初始安裝階段 go 時,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
}

如果還使用 https 設置了siteurlhome ,請檢查 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
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM