Поддержка WordPress Multisite Ошибка установки соединения с базой данных, как только

  • Решено piroman

    (@piroman)


    Пытаюсь создать сеть сайтов. Установил русский wordpress 3.3.2 c нуля — все нормально.

    Включил режим Multisite добавив в wp-config.php

    define('WP_ALLOW_MULTISITE', true);

    Все нормально.

    Зашел в «создать сеть сайтов», создаю директорию — все нормально,

    на втором шаге добавляю в wp-config.php

    define( 'MULTISITE', true );
    define( 'SUBDOMAIN_INSTALL', false );
    $base = '/';
    define( 'DOMAIN_CURRENT_SITE', 'мойдомен.ru' );
    define( 'PATH_CURRENT_SITE', '/' );
    define( 'SITE_ID_CURRENT_SITE', 1 );
    define( 'BLOG_ID_CURRENT_SITE', 1 );

    Смотрю на сайт — вижу

    «Ошибка установки соединения с базой данных.»

    Где копать не понимаю.

    Лирическое отступление, хостинг кластерный, сервер базы данных находится на не localhost а на внутреннем ip. Не может быть такого, что в режиме MS настройки БД где то в другом месте?

Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Автор piroman

    (@piroman)

    Да, если убираю эти строчки из wp-config.php — все замечательно работает, но без режима сети.

    Автор piroman

    (@piroman)

    В англоязычной версии аналогично 🙁

    Автор piroman

    (@piroman)

    Победил. Дело оказалось в БД мастер-мастер — криков на форумах по этому поводу было.

    Есть даже фикс, ждет больше года, странно, что его не внесли
    http://core.trac.wordpress.org/ticket/16568

    Вкратце
    В wp-admin/includes/schema.php

    после

    if ( !is_multisite() ) {

    Вместо

    $wpdb->insert( $wpdb->blogs, array( ‘site_id’ => $network_id, ‘domain’ => $domain, ‘path’ => $path, ‘registered’ => current_time( ‘mysql’ ) ) );

    $wpdb->insert( $wpdb->blogs, array( ‘site_id’ => $network_id, ‘blog_id’ => 1, ‘domain’ => $domain, ‘path’ => $path, ‘registered’ => current_time( ‘mysql’ ) ) );

    Вроде как работает.

Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Тема «Ошибка установки соединения с базой данных, как только» закрыта для новых ответов.