Установка WordPress 3.0.3 в режиме сети

EnChikiben | 14.12.2010 | , ,  | 28 комментариев

Думаю всем известно что с выходом 3 версии WordPress и WordPress MU были объеденные. Устанавливается она так же как обычный WordPress (все должны справится). А в этой записи я опишу процесс создания так называемой "сети".

1. Допустим мы установили WordPress и он работает.

2. Включение режима Multisite.

Чтобы появился пункт меню «Сеть» (Network), нужно определить константу режима Multisite в файле wp-config.php.

Установка режима сеть

Откройте wp-config.php и добавьте перед комментарием

/* Это всё, дальше не редактируем. Успехов! */

следующую строку:

define('WP_ALLOW_MULTISITE', true);

Если все сделали правильно то он появится.

3. Установка сети.

У вас должен появиться пункт «Сеть» в меню «Инструменты». Перейдите на страницу «Инструменты» > «Сеть», чтобы увидеть экран, на котором можно настроить параметры будущей сети.

Адреса сайтов вашей сети
Можно выбрать между поддоменами и подкаталогами (если нет ограничений). Это означает, что каждый новый сайт вашей сети будет создан как виртуальный поддомен или подкаталог. Вы должны выбрать один из вариантов, и изменить свой выбор без переустановки системы будет нельзя. См. также секцию.

  • Поддомены — пример: site1.example.com и site2.example.com
  • Подкаталоги — пример: example.com/site1 и example.com/site2
Параметры сети
Эти значения заполняются автоматически.
Адрес сервера
Интернет-адресом вашей сети будет example.com.
Название сети
Как вы хотите назвать свою сеть?
E-mail администратора
Ваш адрес e-mail.

Убедитесь, что все значения введены правильно, затем нажмите кнопку «Установить».

4. Активация сети

Следующие шаги необходимы для завершения процесса.

1. Создайте директорию blogs.dir в каталоге /wp-content/.
Эта директория используется для хранения медиафайлов, загружаемых на сайты, и должна быть доступна для записи. С помощью команд CHOWN и CHMOD нужно установить такие же параметры, как и у каталога wp-content.
2. Добавьте строки, которые выдаст вам WordPress, в файл wp-config.php.
Эти строки создаются динамически в зависимости от конфигурации вашей сети.
Откройте файл wp-config.php, оставаясь авторизованным в панели управления сайтом.
Добавьте созданные строки сразу перед комментарием /* Это всё, дальше не редактируем. Успехов! */.
Размещённую ранее строку define('WP_ALLOW_MULTISITE', true); стоит удалять только в том случае, если вы хотите избавиться от пункта «Сеть» в меню. Можно оставить его, чтобы всегда иметь доступ к правилам в .htaccess.
3. Добавьте созданные правила mod_rewrite в файл .htaccess, заменив остальные правила WordPress.
(Если такого файла нет, создайте его.)
Эти строки создаются динамически в зависимости от конфигурации вашей сети.
4. Авторизуйтесь заново.
После завершения перечисленных шагов и сохранения файлов wp-config.php и .htaccess ваша сеть будет активирована и настроена. Вам потребуется авторизоваться снова. Нажмите «Войти», чтобы попасть в панель управления. Если войти не удаётся, очистите кэш браузера и файлы cookie.

5. Параметры суперадминистратора

Вы увидите новый раздел меню под названием «Администратор». Его пункты предназначены для добавления и управления сайтами вашей сети. Ваш первоначальный сайт теперь является главным сайтом сети.

Перейдите на страницу «Администратор» > «Настройки», чтобы настроить параметры сети, затем начинайте создавать сайты и пользователей.

Это нужно знать

Здесь приведены некоторые дополнительные сведения, которые нужно иметь в виду при администрировании сети.

Постоянные ссылки

Постоянные ссылки по-прежнему будут работать, хотя на основном блоге (т.е. на первом из созданных) к адресам будет добавлен префикс blog, и они примут вид domain.com/blog/YYYY/MM/POSTNAME

Это сделано, чтобы предотвратить конфликты между страницами и новыми сайтами в режиме подкаталогов. На текущий момент нет простого способа это изменить, поскольку в этом случае WordPress не сможет автоматически разрешать конфликты между основным и дочерними сайтами. Это будет исправлено в одной из следующих версий WordPress.

Плагины WordPress

Плагины WordPress теперь обладают дополнительной гибкостью, в зависимости от их предназначения в сети.
  • Плагины для конкретных сайтов: Плагины WordPress, которые владельцы блогов могут активировать или деактивировать в индивидуальном порядке, находятся в каталоге plugins. Вам нужно разрешить страницу «Плагины» для администраторов отдельных сайтов на странице «Настройки сети».
  • Сетевые плагины: Плагины WordPress, расположенные в каталоге plugins, могут быть активированы суперадминистратором для всей сети.
  • Необходимые плагины: Плагины WordPress, используемые на всех сайтах сети, можно также устанавливать в каталог mu-plugins в виде отдельных файлов или файлов, подключающих подкаталоги. Файлы в дочерних директориях внутри этого каталога не обрабатываются. Эти файлы не требуют активации и деактивации; если они есть, то они используются.

Рубрики и метки

По умолчанию в WordPress 3.0 глобальные элементы отключены. Чтобы вывести глобальные метки на главную страницу сайта либо на отдельные страницы или блоги сети для облегчения навигации по помеченному содержимому, можно воспользоваться плагином Sitewide Tags или другим подобным.

Переключение между поддоменами и подкаталогами

Если вы установили WordPress больше месяца назад, то при попытке активировать сеть вам будет доступен только режим поддоменов. Это сделано, чтобы предотвратить возможные конфликты между страницами (например, example.com/pagename) и сайтами (например, example.com/sitename). Если вы уверены, что эта проблема вас не коснётся, после завершения установки можно изменить режим.

Измените значение параметра SUBDOMAIN_INSTALL в wp-config.php:

Использовать поддомены
define( 'SUBDOMAIN_INSTALL', true );
Использовать подкаталоги
define( 'SUBDOMAIN_INSTALL', false );

Вам также нужно будет обновить .htaccess для нового режима. Имейте в виду, что если сайт уже какое-то время проработал в одном из режимов, то его смена может привести к проблемам, поэтому будьте осторожны.

.htaccess и Mod Rewrite

В отличие от одиночного сайта на WordPress, который может работать с «некрасивыми» постоянными ссылками и без расширения Mod Rewrite, режим MultiSite требует его, чтобы обрабатывать адреса дочерних сайтов. Это приводит к необходимости использовать файл .htaccess, формат которого в режимах подкаталогов и поддоменов немного отличается. В примерах ниже показаны стандартные правила .htaccess для режимов подкаталогов и поддоменов, когда WordPress установлен в корневой каталог сайта. Если ваш WordPress размещён в отдельном каталоге, нужно соответствующим образом изменить значение RewriteBase.

Помните, что это ПРИМЕРЫ, которые работают на многих, но не на всех серверах.

Пример для режима подкаталогов

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

# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [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).*) $1 [L]
RewriteRule  ^[_0-9a-zA-Z-]+/(.*\.php)$ $1 [L]
RewriteRule . index.php [L]
# END WordPress

Пример для режима поддоменов

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

# uploaded files
RewriteRule ^files/(.+) wp-includes/ms-files.php?file=$1 [L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule . index.php [L]
# END WordPress

28 комментариев — “Установка WordPress 3.0.3 в режиме сети”

  1. Шура — 21.01.2011, 15:01

    Даже в русской локализации, установленной в режиме директории невозможно создать сайт вида domain.ru/blogs/Блог_Саньки_Рыжего – кириллицу не поддерживает никак.
    Это плохо. Будет когда-либо поправлено?

    ответить

    • EnChikiben — 21.01.2011, 17:01

      А не пробовали в юникоде имя писать?

      ответить

  2. Ольга — 29.01.2011, 02:01

    После создания сети (пытаюсь ставить подкаталоги мой_сайт.ru/blog) никакими силами не могу войти в админку.
    Блог пытаюсь поставить на хост sweb.ru

    Помогите пожалуйста справиться с этой бедой.

    ответить

    • EnChikiben — 29.01.2011, 12:01

      Что выдается при входе в админку?

      ответить

  3. vyhori — 15.02.2011, 11:02

    Всё сделал как прописано. Появились панели в админке, новые таблицы sql. А вот нового сайта ‘http://master.fscm.md’ нет ! Нет и панели настройки блога в админке. Есть ошибка:
    «Internal Server Error

    The server encountered an internal error or misconfiguration and was unable to complete your request.

    Please contact the server administrator, root@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.

    More information about this error may be available in the server error log.
    Apache/2.2.17 (Fedora) Server at master.fscm.md Port 80″

    В настройках блога ПУТЬ «/» – надо ли что то менять, нужно ли создавать поддиректории или суб директории?

    ответить

    • EnChikiben — 15.02.2011, 11:02

      .htaccess и Mod Rewrite присутствуют?

      ответить

      • vyhori — 15.02.2011, 13:02

        # BEGIN WordPress
        RewriteEngine On
        RewriteBase /
        RewriteRule ^index\.php$ – [L]

        # uploaded files
        RewriteRule ^files/(.+) wp-includes/ms-files.php?file=$1 [L]

        RewriteCond %{REQUEST_FILENAME} -f [OR]
        RewriteCond %{REQUEST_FILENAME} -d
        RewriteRule ^ – [L]
        RewriteRule . index.php [L]
        # END WordPress

        Mod Rewrite в смысле права доступа 777 ?

        ответить

        • EnChikiben — 15.02.2011, 13:02

          Файл .htaccess я так понял есть, Mod Rewrite у вас на сервере как то не правильно сконфигурирован… сайт открывается но ссылки не правильно переадресовываются.

          http://master.fscm.md/wp-content/themes/twentyten/style.css – 404 Not Found

          у вас тема вся загружена?

          ответить

          • vyhori — 16.02.2011, 11:02

            несколько тем загружены полностью, все работают на основном сайте. активрованы для сети

  4. vyhori — 17.02.2011, 05:02

    Переустановил вордресс. Активировал сеть. Далее «НАСТРОЙКИ» – «СЕТЬ» и получил сообщение

    «Внимание! Возможно, маска DNS настроена неправильно!

    Скрипт установки попытался открыть случайный адрес (c1f46f.fscm.md) на вашем домене.

    Чтобы использовать режим субдоменов, необходимо использовать маску в записях DNS. В общем случае достаточно добавить с помощью инструмента настройки DNS запись с адресом *, указывающую на ваш сервер.

    Можно использовать основной сайт, однако любой созданный субдомен будет недоступен. Если вы уверены, что ваши настройки DNS верны, проигнорируйте это сообщение.»

    Вот ответ на роблему…

    ответить

    • Александр — 18.02.2011, 15:02

      Ну так нужно просить хостера настроить DNS.. *.domain.ltf cname .domain.ltd. где то так

      ответить

  5. Дима Бу — 28.02.2011, 21:02

    Ребята помогите с проблемой: после установки перехожу: «Администратор» – «Сайты» – выбираю созданный субдомен xxx.mysite.ru – выбираю «панель» (тут пройдя по ссылке я должен был бы попасть в админ панель нового субдомена) НО! пишет: Not Found The requested URL /wp-admin/ was not found on this server.

    Ненаходит ничего:( Помогите с решением проблемы

    ответить

  6. Дима Бу — 01.03.2011, 00:03

    ага вот его содержимое:
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ – [L]

    # uploaded files
    RewriteRule ^files/(.+) wp-includes/ms-files.php?file=$1 [L]

    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^ – [L]
    RewriteRule . index.php [L]

    при нажатии на «Обновить сеть» выдает вот что:
    Обновить сеть
    http://xxx.mysite.ru
    Внимание! Проблема при обновлении http://xxx.mysite.ru. Похоже, сервер не имеет возможности подключаться к находящимся на нём сайтам. Текст ошибки: Не удалось открыть дескриптор для fopen() к http://xxx.mysite.ru/wp-admin/upgrade.php?step=upgrade_db

    ответить

  7. pravednik — 15.03.2011, 06:03

    установил, не захотело создавать новый сайт, выдало ошибку, ладно, не беда, беда в том что ткнул кнопку обновится, все умерло нафиг.

    ответить

    • EnChikiben — 15.03.2011, 09:03

      В корне сервера удалите файл .maintenance

      ответить

  8. blognablog — 23.03.2011, 00:03

    а теперь если можно по подробнее как сделать , что бы субдомены работали??

    ответить

  9. exay — 19.04.2011, 11:04

    Скажите, как удалить ненужные блоги так, чтобы удалились и их ID?

    ответить

    • EnChikiben — 19.04.2011, 16:04

      Не понял вопрос, что значит удалить их ID ?

      ответить

  10. Mc.Sim — 07.05.2011, 00:05

    Доброго времени!
    Немного не пойму, как будет работать мультиблог, если активировать сеть в режиме поддоменов?
    Собственно, каким образом будут создаваться поддомены?
    Это же делается силами DNS.
    Спасибо

    ответить

  11. jurgen — 08.05.2011, 22:05

    Доброго времени суток.
    Делаю на локальном хосте. Создал новый блог, нажал обновить сеть и выскочила ошибка
    Внимание! Проблема при обновлении http://localhost/blogblog/jurgen. Похоже, сервер не имеет возможности подключаться к находящимся на нём сайтам. Текст ошибки: Не удалось открыть дескриптор для fopen() к http://localhost/blogblog/jurgen/wp-admin/upgrade.php?step=upgrade_db

    Как исправить и в чём проблема?

    ответить

  12. Андрей — 13.06.2011, 17:06

    Привет всем! Нужна помощь!
    Я всё установил правильно, работает идеально без ошибок.
    Ноесть проблема. Проблама в том, что при регистрации нового блога не отправляется письмо активации аккаунта. Пользуюсь поддоменами.
    На версии WordPress MU 2.8.6 письмо отправляется нормально, а вот здесь что-то никак не хочет :(
    В чем может быть проблема?

    ответить

    • Dmitry — 03.08.2011, 18:08

      смотри логи сервера, 100% найдешь ответ там!

      ответить

  13. Vlad — 16.11.2011, 02:11

    А естьв в такой сети вывод новых постов с блогов на главную?

    ответить

  14. Владимир — 29.12.2011, 17:12

    Подскажите, имеется ли информация как не уничтожая информации блогов перейти с режима подкаталогов в режим поддоменов? Имел неосторожность включить режим подкаталогов, но потом пришел к выводу, что лучше работать в режиме поддоменов – это дает больше возможностей.

    ответить

    • EnChikiben — 29.12.2011, 18:12

      Я где то давно встречал такой материал, сейчас к сожалению найти не могу… там надо править конфиг файл и базу…

      ответить

      • Владимир — 29.12.2011, 18:12

        Эх, жаль… Это русскоязычный материал был? Может, мне гугл поможет?..

        ответить

Добавить комментарий

Все коментарии строго модерируются. Поля отмеченые * обязательны к заполнению.