Как я могу предотвратить перенаправление многосайтового WordPress на домашнюю страницу, включая косую черту? - PullRequest
0 голосов
/ 22 мая 2019

Я создал мультисайт Wordpress, но когда я перехожу на один из мультисайтов, он автоматически добавляет косую черту в URL домашней страницы.Мой мультисайт также находится в подкаталоге, я не уверен, влияет ли это на него.Например,

www.example.com/core/resource/site1

перенаправляет на:

www.example.com/core/resource/site1/

Я попытался обновить базу данных и изменить URL-адреса, чтобы онине включайте косую черту, однако, когда я делаю это, сайт ломается.Он все еще пытается перенаправить, и я получаю страницу «Ошибка при установлении соединения с базой данных».Как и ожидалось.

Это то, что у меня сейчас есть в моей конфигурации nginx:

server {
    listen 443 ssl;
    server_name example.com;

    access_log /var/log/nginx/mysite.com/access.log;
    error_log /var/log/nginx/mysite.com/error.log error;

    root /data/wordpress/mysite;

    index  index.html index.php;

    rewrite ^/$ /wp/index.php break;

#   Rewrite multisite '.../wp-.*' and '.../*.php'.

    if (!-e $request_filename) {
        rewrite ^/(wp-admin/.*)$ /wp/$1 last;
        rewrite ^/core/resource(/[^/]+)?(/wp-admin/.*)$ /core/resource/wp/$2 last;

        rewrite /wp-admin$ $scheme://$host$uri/ permanent;
        rewrite ^/core/resource(/[^/]+)?(/wp-.*) /core/resource/wp$2 last;
        rewrite ^/core/resource(/[^/]+)?(/.*\.php)$ /core/resource/wp$2 last;
    }

    location /core/resource {
        # First attempt to serve request as file, then
        # as directory, then fall back to displaying a 404.
        try_files $uri $uri/ /core/resource/wp/index.php?$args;
    }

    rewrite ^/(wp-includes/.*)$ /core/resource/wp/$2 last;

    include global/media.conf;
    include global/php.conf;
    include global/wordpress-w3tc.conf;

    client_max_body_size 20M;

    ssl on;

    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
}

server {
    listen 80;
    server_name example.com;

    return 301 https://www.example.com$request_uri;
}

Может кто-нибудь посоветовать, как я могу предотвратить многосайтовый слот-слот wordpress?Заранее спасибо.

1 Ответ

0 голосов
/ 23 мая 2019

Я решил эту проблему, добавив remove_filter('template_redirect', 'redirect_canonical'); в мой файл functions.php. Мне также пришлось очистить кеш в моем браузере.

...