Есть ли ограничения на мультисайтинг

Главные вкладки

Аватар пользователя winny63 winny63 2 января 2011 в 16:47

Всех с Новым годом!
Вопрос:
Есть ли где-то в настройках drupal или apache параметр, ограничивающий количество сайтов на одном "ядре" drupal'а?
Генезис вопроса: на локальном хосте Apache (2.2 под Win2k) в папке с drupal (6.19) настроено 10 мультисайтов (точнее, 1 корневой + 10 имеющих собственную директорию). Одиннадцатый (т.е. следующий) ставится не хочет (пробовал два разных). На процедуру инсталляции выходит, после выбора языка и нажатии кнопки задумывается и не выдает ответа. В логах - ошибка 500.
Есть какие предложения по направлению копания? Т.к. хостинг локальный, то никакой "перегруз" тут не катит - сайты запускаются по отдельности.

Комментарии

Аватар пользователя vgoodvin vgoodvin 3 января 2011 в 13:26

"winny63" wrote:
На процедуру инсталляции выходит, после выбора языка и нажатии кнопки задумывается и не выдает ответа. В логах - ошибка 500.

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

Аватар пользователя winny63 winny63 3 января 2011 в 14:21

Стоит один drupal. В на сервере базы данных для каждого сайта организована отдельная база. Один сайт настроен и работает как default (в соответствующей папке в sites). Для всех других сайтов в папке sites лежат папки типа sitenameN.TESTSITE.RU, содержащие наборы папок: files, modules, themes... В настройках Apache, соответственно, настроены виртуальные хосты. В общем, ничего необычного.
Для первых 11 сайтов все установилось и работает. Для последующих - при первом входе на сайт, когда происходит создание таблиц и наполнение базы сайта - белый экран после предложения выбрать язык сайта, даже на ввод имени базы данных не выходит...

Аватар пользователя winny63 winny63 3 января 2011 в 14:48

RxB wrote:
Виртуальный хост в студию + пора бы научиться читать логи ошибок

а по-конкретнее, если можно...
Как я говорил, в access-log'е сайта все нормально проходит с первоначальным запуском, а потом выдается код 500...
или Вы говорите про другой log?

Аватар пользователя winny63 winny63 4 января 2011 в 8:16

RxB wrote:
виртуальный хост в студию

Извините, уважаемый, но я не очень понимаю, ЧТО Вы хотите сказать Вашей фразой...

Аватар пользователя v1adimir@drupal.org v1adimir@drupal.org 4 января 2011 в 11:21

у меня 12 сайтов в текущий момент настроены подобным образом. все работают.

что в error.log апача пишется вместе с 500-й ошибкой? проверь если свободное место на диске и сколько друпалу доступно памяти?

Аватар пользователя winny63 winny63 4 января 2011 в 17:26

<a href="mailto:v1adimir@drupal.org">v1adimir@drupal.org</a> wrote:
у меня 12 сайтов в текущий момент настроены подобным образом. все работают.

что в error.log апача пишется вместе с 500-й ошибкой? проверь если свободное место на диске и сколько друпалу доступно памяти?


В log'е все заканчивается:

192.168.1.170 - - [02/Jan/2011:19:43:06 +0300] "GET /install.php?profile=default&locale=ru HTTP/1.1" 500 -

На диске свободно полтора гига.
Оперативки 2 гига.
Сайты запускаются по одному.

Аватар пользователя winny63 winny63 5 января 2011 в 10:55

<a href="mailto:v1adimir@drupal.org">v1adimir@drupal.org</a> wrote:
winny63 wrote:
Оперативки 2 гига.

важно не сколько RAM в системе, а сколько разрешенно использовать апачу и php-скриптам.

Я тоже это подозреваю! Какие параметры это регулируют?

Аватар пользователя Softovick Softovick 4 января 2011 в 11:51

Вас уже несколько раз попросили показать, как настроены виртуальные хосты. Не проще ли показать? Скорее всего действительно там кроется закавыка и то, что 10 других сайтов работают ничего не значит.

Аватар пользователя winny63 winny63 4 января 2011 в 18:57

Извольте:
Кусок текста из httpd-vhosts.conf:

...
<VirtualHost 192.168.1.170:80>
    ServerAdmin webmaster@winnytestsite.ru
    DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/drupal"
    ServerName ecommerce
    ServerAlias ecommerce.winnytestsite.ru
    ErrorLog "logs/ecommerce.winnytestsite.ru-error.log"
    CustomLog "logs/ecommerce.winnytestsite.ru-access.log" common
</VirtualHost>

<VirtualHost 192.168.1.170:80>
    ServerAdmin webmaster@winnytestsite.ru
    DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/drupal"
    ServerName mike.net
    ServerAlias www.mike.net
    ErrorLog "logs/mike.net-error.log"
    CustomLog "logs/mike.net-access.log" common
</VirtualHost>

<VirtualHost 192.168.1.170:80>
    ServerAdmin webmaster@winnytestsite.ru
    DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/drupal"
    ServerName remesloart
    ServerAlias remesloart.winnytestsite.ru
    ErrorLog "logs/remesloart.winnytestsite.ru-error.log"
    CustomLog "logs/remesloart.winnytestsite.ru-access.log" common
</VirtualHost>

Первый блок - от работающего сайта. Два вторых - от неработающих. Делалось все методом copy-paste. Все сайты прописаны в локальном hosts

Аватар пользователя winny63 winny63 4 января 2011 в 19:46

Попытался немного изменить схему мультисайтинга, создав все под корнем одного сайта (не знаю, может это имеет значение; как видно из моего предыдущего поста - один из сайтов "нарушал" эту схему).
Не помогло (что, вероятно, кому-то очевидно).
Может действительно не хватает ресурсов, т.к. все логи всех сайтов "захвачены" (не открываются на редактирование, по крайней мере, FAR'ом).
Странно - Перечень ресурсов в предыдущем посте, вроде бы не так их и мало... Как это можно проверить?
Полный кусок access-log'а при первом входе на новый сайт:

192.168.1.170 - - [04/Jan/2011:19:32:04 +0300] "GET / HTTP/1.1" 302 -
192.168.1.170 - - [04/Jan/2011:19:32:04 +0300] "GET /install.php HTTP/1.1" 302 -
192.168.1.170 - - [04/Jan/2011:19:32:05 +0300] "GET /install.php?profile=default HTTP/1.1" 200 3256
192.168.1.170 - - [04/Jan/2011:19:32:07 +0300] "GET /modules/system/system-menus.css?0 HTTP/1.1" 200 935
192.168.1.170 - - [04/Jan/2011:19:32:07 +0300] "GET /themes/garland/print.css?0 HTTP/1.1" 200 1251
192.168.1.170 - - [04/Jan/2011:19:32:07 +0300] "GET /modules/system/defaults.css?0 HTTP/1.1" 200 757
192.168.1.170 - - [04/Jan/2011:19:32:07 +0300] "GET /modules/system/system.css?0 HTTP/1.1" 200 10020
192.168.1.170 - - [04/Jan/2011:19:32:07 +0300] "GET /themes/garland/style.css?0 HTTP/1.1" 200 18844
192.168.1.170 - - [04/Jan/2011:19:32:07 +0300] "GET /modules/system/maintenance.css?0 HTTP/1.1" 200 425
192.168.1.170 - - [04/Jan/2011:19:32:07 +0300] "GET /themes/garland/minnelli/logo.png HTTP/1.1" 200 5399
192.168.1.170 - - [04/Jan/2011:19:32:07 +0300] "GET /misc/favicon.ico HTTP/1.1" 200 5430
192.168.1.170 - - [04/Jan/2011:19:32:07 +0300] "GET /themes/garland/minnelli/minnelli.css?0 HTTP/1.1" 200 378
192.168.1.170 - - [04/Jan/2011:19:32:07 +0300] "GET /themes/garland/images/body.png HTTP/1.1" 200 712
192.168.1.170 - - [04/Jan/2011:19:32:07 +0300] "GET /themes/garland/images/bg-content-right.png HTTP/1.1" 200 3169
192.168.1.170 - - [04/Jan/2011:19:32:07 +0300] "GET /themes/garland/images/bg-navigation.png HTTP/1.1" 200 104
192.168.1.170 - - [04/Jan/2011:19:32:07 +0300] "GET /themes/garland/images/task-list.png HTTP/1.1" 200 128
192.168.1.170 - - [04/Jan/2011:19:32:07 +0300] "GET /themes/garland/images/bg-content.png HTTP/1.1" 200 485
192.168.1.170 - - [04/Jan/2011:19:32:07 +0300] "GET /themes/garland/images/bg-content-left.png HTTP/1.1" 200 3275
192.168.1.170 - - [04/Jan/2011:19:32:16 +0300] "POST /install.php?profile=default HTTP/1.1" 302 -
192.168.1.170 - - [04/Jan/2011:19:32:17 +0300] "GET /install.php?profile=default&locale=ru HTTP/1.1" 500 -
Аватар пользователя winny63 winny63 4 января 2011 в 19:55

В error.log Apache ничего необычного нет. При старте сервера производятся записи:

[Tue Jan 04 19:49:55 2011] [notice] Apache/2.2.15 (Win32) PHP/5.2.9-2 configured -- resuming normal operations
[Tue Jan 04 19:49:55 2011] [notice] Server built: Mar  4 2010 11:27:46
[Tue Jan 04 19:49:55 2011] [notice] Parent: Created child process 1640
[Tue Jan 04 19:49:55 2011] [notice] Child 1640: Child process is running
[Tue Jan 04 19:49:55 2011] [notice] Child 1640: Acquired the start mutex.
[Tue Jan 04 19:49:55 2011] [notice] Child 1640: Starting 64 worker threads.
[Tue Jan 04 19:49:55 2011] [notice] Child 1640: Starting thread to listen on port 80.

При вызове "неработающих" сайтов ничего нового не добавляется.

Аватар пользователя v1adimir@drupal.org v1adimir@drupal.org 4 января 2011 в 22:02

winny63 wrote:
...

[Tue Jan 04 19:49:55 2011] [notice] Child 1640: Starting 64 worker threads.
[Tue Jan 04 19:49:55 2011] [notice] Child 1640: Starting thread to listen on port 80.

...


Апач, как я понимаю, запускается со threads. А безопасно ли использовать apache threads + php под windows? Под *nix такая комбинация точно приведет к проблемам.

p.s. ну у тебя и сайтег прописан в vhosts

Аватар пользователя winny63 winny63 5 января 2011 в 10:57

Serge66 wrote:
"winny63" wrote:
На диске свободно полтора гига.
Оперативки 2 гига.
Винда на диски не ругается?

Нет. Сайты - учебно-тренировочные, загрузки минимум.

Аватар пользователя v1adimir@drupal.org v1adimir@drupal.org 5 января 2011 в 0:40

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

Аватар пользователя winny63 winny63 5 января 2011 в 23:46

М-да...
Проблему удалось... "преодолеть" только радикально увеличив в php.ini директиву max_execution_time - до 180, хотя реальное наблюдения показало, что хватило бы и 100.
В общем, что-то реально тормозит PHP, возможно, какие-то из установленных ранее сайтов с большим набором модулей...
Кстати, простое отключение нескольких несложных (в части функционального наполнения) сайтов никакого существенного эффекта не дало.
В общем, спасибо за участие...
Коллеги!
Где можно прочитать про архитектуру работы [мульти]сайтов на Drupal, особенно в части понимания, что грузится и занимает сервер независимо от того, используется ли сайт или нет?