[Помогите] Wordpress 3.0 - Проблема с Мультидоменностью

Тема в разделе "Wordpress", создана пользователем alfaexpert, 27 июн 2010.

Статус темы:
Закрыта.
Модераторы: Sorcus
  1. alfaexpert

    alfaexpert

    Регистр.:
    23 июл 2008
    Сообщения:
    183
    Симпатии:
    27
    Задался целью сделать Wordpress 3.0 мультидоменным.
    Чтобы на доменах example1.com и example2.com были разные сайты но физически работают они на базе одного движка.
    скачал Wordpres 3.0 активировал Мультисайтовость.
    По умолачнию можно делать сайты вида site.example.com или example.com/site
    В сети очень много написано про WordPress MU Domain Mapping
    http://wordpress.org/extend/plugins/wordpress-mu-domain-mapping/
    Поставил плагин,через cPanel перенастроил днсы и получилось что могу в один клик делать кучу сайтов вида: site.example.com, site2.example.com
    А вот домены второго уровня: vasya-pupkin.ru не в админке прописываются но не прикрпеляютсяк движку.
    Максимум чего добился: движок создает сайт на субдомене.
    Вопрос: Как прикрепить домен второго уровня к Wordpress ? Или я не тот плагин установил для мультидоменности?. Все плагины англоязычные, мануалов на русском мало, такое чувство что где то я не так понял английский текст мануала.
    Вообще реально ли сделать Wordpress с полноценной мультидоменностью ?
     
  2. Lazy_bones

    Lazy_bones

    Регистр.:
    11 дек 2008
    Сообщения:
    436
    Симпатии:
    106
    Все это делается без всяких плагинов.
    Вот статья, сохранял для себя когда то.
    Сам делал сетку блогов на 2.9 и проблем не было.
    В 3 версии думаю тоже самое.

    1. Домены в одну папку. Раз движок будет один, то вполне логично, что установлен он должен быть в одной папке основного домена. Остальные домены направляем на эту папку. Как известно, менеджеры хостинга при добавлении нового сайта (домена) разрешают указать данные по папке размещения домена как на автомате по умолчанию, так и вручную. Имеем домены сайт1.ru сайт2.ru сайт3.ru Для основного оставим папку как есть (к примеру /www/сайт1.ru), для остальных при их создании впишем папку не по дефолту, а ту которая прописана для первого основного сайта. Тем самым все сайты (домены) будут искать информацию для запуска и подключения в одной папке на хостинге.

    2. Одна база. Различия в работе разных сайтов на движке wordpress в общем, определяется только файлом config.php, т.е. данными о подключении к базе, префиксами таблиц, кодовыми словами и прочее, а вся остальная информация (настройки, темплаты, подключенные плагины) уложена в базе таблиц для каждого сайта.

    В общем виде добавляемый кусок кода в файл config.php выглядит следующим образом

    $prefix = $_SERVER["HTTP_HOST"];
    $prefix = str_replace("www.", "", $prefix);
    $prefix = str_replace("-", "", $prefix);
    $prefix = str_replace(".", "", $prefix);
    $table_prefix = $prefix."_" ;
    Что получаем? Исходя из запрошенного имени сайта, конфиг подключит таблицы базы с префиксом определяемым по $_SERVER['HTTP_HOST']. Для каждого сайта будет свой комплект таблиц.

    3. Robots.txt и sitemap.xml Вот тут уже начинаются трудности. В папке, в общем, должно быть по одному такому файлу. Но у нас то несколько сайтов, у которых вполне определимо разные данные в роботсе и сайтмепе. Что будем делать, чтобы при запросе к определенному сайту нашей группы выдавался нужный файл? Пойдем простым путем по аналогии с базами. Сделаем несколько файлов - robots-site1.ru.txt robots-site2.ru.txt robots-site3.ru.txt и sitemap-site1.ru.xml sitemap-site2.ru.xml sitemap-site3.ru.xml А файл .htaccess дополним следующей конструкцией

    RewriteCond %{REQUEST_FILENAME} /robots.txt$ [NC]
    RewriteRule ^ /robots-%{HTTP_HOST}.txt [L]
    RewriteCond %{REQUEST_FILENAME} /sitemap.xml$ [NC]
    RewriteRule ^ /sitemap-%{HTTP_HOST}.xml [L]
    Соответственно при запросе по уникальному URL сайта будут отдаваться нужные файлы роботса и сайтмепа. Единственное, что в плагине google sitemap нужно будет указать для каждого блога в их админках соответствующие файлы sitemap.

    4. Загрузка картинок. Чтобы не пересекать блоги, особенно при загрузке картинок с одинаковым именем самое лучшее это создать отдельные папки для каждого блога в папке /uploads/. Соответственно в настройках "разное" для кажого блога указать конкретную для него папку загрузки.
     
  3. Dьяменьший

    Dьяменьший

    Регистр.:
    7 сен 2008
    Сообщения:
    220
    Симпатии:
    212
    Реально. Плагин именно тот что нужно.

    В настройках плагина выбираешь вид перенаправления - A или CNAME. У тебя появится надпись, куда именно надо перенаправлять домен. Идешь туда где зареген домен и перенаправляешь его по инструкции, как на другой хостинг. Все очень просто.
    Потом делаешь новый блог в мультисайте, называешь как угодно, идешь в админке этого блога в Domain Mapping и добавляешь новый домен. СОВЕТ!! не ставь новый домен дефолтом, пока днсы не перепишутся полностью! а то не сможешь зайти в админку. А они переписываются иногда мгновенно, а иногда часов 12. Как домен станет стабильно выводить на твой блог, ставь его дефолтом.
    Вуаля!
     
    DeXtR и alfaexpert нравится это.
  4. alfaexpert

    alfaexpert

    Регистр.:
    23 июл 2008
    Сообщения:
    183
    Симпатии:
    27
    У меня в настройках плагина нет такой фишки: вид перенаправления - A или CNAME. :ai:
    Я перенаправлял домен domain.ru на папаку /home/папка_где_стоит_вордпресс/public_html/
    в $_SERVER['HTTP_HOST'] было прописано domain.ru и обращение шло к движку Wordpress, но тут же срабатываел редирект и меня направляло на основной домен где стоит сам Wordpress.
     
  5. Dьяменьший

    Dьяменьший

    Регистр.:
    7 сен 2008
    Сообщения:
    220
    Симпатии:
    212
    Заходишь в Domain mapping, только не который в Tools, а который в Site admin. У меня MU, но если ты включил в тройке мультисайтовость, там должно быть все то же самое. Там два поля: или выставляешь Server IP Address для А, или пишешь Server CNAME domain. Это общая настройка для хоста.
    Затем идешь в каждый конкретный блог уже в Tools, и вбиваешь домен.
    (Кажется, в тройке хост называется блогом, а блог сайтом, не помню, нет сейчас установленного...)
     
  6. alfaexpert

    alfaexpert

    Регистр.:
    23 июл 2008
    Сообщения:
    183
    Симпатии:
    27
    Все заработало! Как то уж перемутили разработчики в плане интерфейса. Сразу не понять в какой последовательности нужно кликать в админке.

    Только вместо танцев с ДНС записями я на уровне веб сервера с нужного мне домена направляю на папку с wordpress и тут же все работает. Не нужно ждать когда днсы перепишутся.
     
  7. Dьяменьший

    Dьяменьший

    Регистр.:
    7 сен 2008
    Сообщения:
    220
    Симпатии:
    212
    А-а, ну если у тебя домен на том же хостинге висит, тогда конечно.
     
  8. Genfald

    Genfald Постоялец

    Регистр.:
    25 апр 2009
    Сообщения:
    57
    Симпатии:
    4
    Установил WP3
    Настроил все как сказано в инструкции
    В настройках прописал

    Прописал в .htaccess
    у меня получился основной сайт vct.od.ua
    создал дополнительный сайт walle

    и теперь если нажать vct.od.ua/walle/ - он отлично работает
    в базе данных он с префиксом wp3_
    Но что сделать что бы он работал по адресу wall-e.od.ua

    Пробовал в настройках домена указывать папку с WP, то есть папку сайта vct.od.ua, ничего не получилось - при вводе в браузер wall-e.od.ua открывается сайт vct.od.ua.

    Что нужно где прописать, помогите пожалуйста!
     
  9. Fast3r

    Fast3r

    Регистр.:
    30 июн 2008
    Сообщения:
    329
    Симпатии:
    39
    а в чем тайный смысл вешать кучу доменов на один двиг? нехватка места под файлы на хостинге? ибо не поверю что такая конструкция будет работать быстрее обычной схемы...
     
  10. alfaexpert

    alfaexpert

    Регистр.:
    23 июл 2008
    Сообщения:
    183
    Симпатии:
    27
    Тайный смысл в:
    Массовом обновлении движка
    Быстром переключении в админку между доменами
    Массовым управлением дизайна - поставил адсенс в шаблоне, он у всех появился.

    Например попробуй 100 разных движков:
    Обновить в случае если это очень нужно
    Быстро заходить в админку каждого (100 логинов и паролей)
    Массово заменить шаблоны ;)
     
Статус темы:
Закрыта.