Wordpress Multisite: дополнительный сайт wp-admin err_too_many_redirects

я установил новый мультисайт WordPress 4.1

Я могу navegate Front и получить доступ к главной панели сайта

http://blog.urlcorrect.com/wp-admin/

Я создал дочерний сайт и не могу получить доступ к панели управления дочернего сайта

http://blog.urlcorrect.com/br/wp-admin/

У меня такая ошибка: Код ошибки: ERR_TOO_MANY_REDIRECTS

--

Я могу получить доступ к фронту

http://blog.urlcorrect.com/br/

но без стилей URL-адрес css неверен (страница не найдена):

http://blog.urlcorrect.com/br/wp-content/themes/twentyfifteen/style.css?ver=4.1

--

У меня есть следующие значения:

current blog domain: blog.urlcorrect.com
current site domain: blog.urlcorrect.com
current blog path: /
current site path: /

--

BBDD (таблица wp_blogs)

blog_id: 1
site_id: 1
domain: blog.urlcorrect.com
path: /
public: 1

blog_id: 2
site_id: 1
domain: blog.urlcorrect.com
path: /br/
public: 1

--

htaccess:

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]

--

Файл wp-config.php

/* Multisite */
define('WP_ALLOW_MULTISITE', true);
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'blog.urlcorrect.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

--

Я не могу найти правильный ответ. Что я делаю не так?

Большое спасибо

Пабло


person Pyaw    schedule 14.02.2015    source источник


Ответы (5)


(Я не беру на себя данное решение);)

Если у вас все еще есть проблема с этим, попробуйте решение с помощью .htaccess.

Измените данный шаблон .htaccess при установке WP Network:

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) featured/$2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ featured/$2 [L]
RewriteRule . index.php [L]

К этому:

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]

Работает с моей проблемой, аналогичной вашей.

Оригинальное решение было размещено здесь ссылка

person Rafał Maliszewski    schedule 15.04.2015
comment
Исправлена ​​и моя проблема. Подумал, что это проблема с htaccess, но не смог определить ее. В моем случае сетевая установка была корнем домена, но не корнем хостинга; был установлен в подкаталог на моем хостинге. - person Mike; 10.02.2017
comment
Абсолютный гений! Большое спасибо. Однако я немного удивлен, увидев, почему WP пишет неправильно .htaccess при установке мультисайта! - person Subrata Sarkar; 21.11.2017
comment
Это решает проблему перенаправления, но разрывает все ссылки в меню «Мои сайты» → «Администратор сети». - person Bob H; 25.06.2018
comment
Большое спасибо! Прекрасно работает с Cloudflare Flexible SSL! - person Fausto T. Toloi; 14.10.2019

Если вы используете Cloudflare, измените режим SSL с гибкого на полный следующим образом:

введите описание изображения здесь

Это сработало для меня.

Источник: https://wordpress.org/support/topic/wp-multisite-too-many-redirects-on-wp-admin/

person Den Pat    schedule 26.06.2020

Поскольку у вас многосайтовый WordPress, вам следует удалить строки:

define('DOMAIN_CURRENT_SITE', 'blog.urlcorrect.com');

define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

от wp-config.php.

person Friedrich    schedule 05.06.2015

Для меня уловка заключалась в проверке базы данных.

Найдите таблицу wp_options и измените строки с option_name siteurl и home с http://127.0.0.1/something на http://localhost/something

надеюсь, это поможет!

person Stefan Nachname    schedule 19.04.2018

В моем случае я использовал Nginx,

Это означает, что .htaccess не будет работать, потому что это Apache.

Если вы используете Nginx, вы можете прочитать страницу Nginx Кодекса WordPress: https://codex.wordpress.org/Nginx

Я вставлю сюда самые важные части на тот случай, если Кодекс отключится по какой-либо причине:

Правила подкаталогов WordPress Multisite

# WordPress multisite subdirectory rules.
# Designed to be included in any server {} block.

map $uri $blogname{
    ~^(?P<blogpath>/[^/]+/)files/(.*)       $blogpath ;
}

map $blogname $blogid{
    default -999;

    #Ref: http://wordpress.org/extend/plugins/nginx-helper/
    #include /var/www/wordpress/wp-content/plugins/nginx-helper/map.conf ;
}

server {
    server_name example.com ;

    root /var/www/example.com/htdocs;
    index index.php;

    location ~ ^(/[^/]+/)?files/(.+) {
        try_files /wp-content/blogs.dir/$blogid/files/$2 /wp-includes/ms-files.php?file=$2 ;
        access_log off;     log_not_found off; expires max;
    }

    #avoid php readfile()
    location ^~ /blogs.dir {
        internal;
        alias /var/www/example.com/htdocs/wp-content/blogs.dir ;
        access_log off;     log_not_found off; expires max;
    }

    if (!-e $request_filename) {
        # Don't use `$uri` here, see https://github.com/yandex/gixy/issues/77
        rewrite /wp-admin$ $scheme://$host$request_uri/ permanent;
        rewrite ^(/[^/]+)?(/wp-.*) $2 last;
        rewrite ^(/[^/]+)?(/.*\.php) $2 last;
    }

    location / {
        try_files $uri $uri/ /index.php?$args ;
    }

    location ~ \.php$ {
        try_files $uri =404;
        include fastcgi_params;
        fastcgi_pass php;
    }

    #add some rules for static content expiry-headers here
}

Правила использования поддоменов WordPress Multisite

map $http_host $blogid {
    default       -999;

    #Ref: http://wordpress.org/extend/plugins/nginx-helper/
    #include /var/www/wordpress/wp-content/plugins/nginx-helper/map.conf ;

}

server {
    server_name example.com *.example.com ;

    root /var/www/example.com/htdocs;
    index index.php;

    location / {
        try_files $uri $uri/ /index.php?$args ;
    }

    location ~ \.php$ {
        try_files $uri =404;
        include fastcgi_params;
        fastcgi_pass php;
    }

    #WPMU Files
        location ~ ^/files/(.*)$ {
                try_files /wp-content/blogs.dir/$blogid/$uri /wp-includes/ms-files.php?file=$1 ;
                access_log off; log_not_found off;      expires max;
        }

    #WPMU x-sendfile to avoid php readfile()
    location ^~ /blogs.dir {
        internal;
        alias /var/www/example.com/htdocs/wp-content/blogs.dir;
        access_log off;     log_not_found off;      expires max;
    }

    #add some rules for static content expiry-headers here
}

Примечание. При установке сети WordPress больше не требуются blogs.dir правила при создании сети, однако они могут потребоваться при переносе старых установок.

person Lucas Bustamante    schedule 10.12.2018