Zope / Plone - быстрый старт
Материал из 1GbWiki.
Версия 11:17, 15 апреля 2010 (править) Renton (Обсуждение | вклад) (→Создание сайта Plone) ← К предыдущему изменению |
Версия 17:03, 5 апреля 2011 (править) (отменить) Renton (Обсуждение | вклад) К следующему изменению → |
||
Строка 1: | Строка 1: | ||
== Общие сведения == | == Общие сведения == | ||
- | Статья представляет собой пошаговое руководство, позволяющие быстро развернуть CMS [http://plone.org/ Plone] с использованием хостинга [http://www.1gb.ru 1Gb.ru]. | + | Статья представляет собой пошаговое руководство, позволяющие быстро развернуть CMS [http://plone.org/ Plone] с использованием хостинга [http://www.1gb.ru 1Gb.ru]. Возможны два варианта развертывания приложения: с использованием версий уже установленных на хостинге и самостоятельная сборка и установка компонентов.<br /> |
- | == | + | Фактически, оба способа похожи друг на друга и требуют одинакового уровня понимания процесса установки. Главное отличие второго способа, это возможность использования любых версий приложений и более полный над ними контроль. |
+ | |||
+ | == Вариант 1: Использование предустановленных компонентов Zope/Plone == | ||
+ | === Установка сервера Zope === | ||
* В разделе личного кабинета /Хостинг HTTP служб/ нужно переключить сайт в режим хостинга Zope. Через 1-3 часа проверить, открыв сайт в обозревателе. Если все в порядке, вы увидите примерно такую страницу: | * В разделе личного кабинета /Хостинг HTTP служб/ нужно переключить сайт в режим хостинга Zope. Через 1-3 часа проверить, открыв сайт в обозревателе. Если все в порядке, вы увидите примерно такую страницу: | ||
[[Изображение:Zope.jpg|480px|thumb|center|Zope - страница по-умолчанию]]<br clear="both" /> | [[Изображение:Zope.jpg|480px|thumb|center|Zope - страница по-умолчанию]]<br clear="both" /> | ||
Строка 45: | Строка 48: | ||
easy_install python-openid | easy_install python-openid | ||
- | == Установка Plone == | + | === Установка Plone === |
- | + | ||
- | === Собственная версия === | ||
- | {в процессе написания} | ||
- | |||
- | === Предустановленная версия === | ||
* Скопируйте файлы Plone в свой <code>instance</code> командой: | * Скопируйте файлы Plone в свой <code>instance</code> командой: | ||
/usr/sbin/zprod-manager add /usr/share/zproduct/plone-3.* ~/http | /usr/sbin/zprod-manager add /usr/share/zproduct/plone-3.* ~/http | ||
Строка 57: | Строка 55: | ||
~/init.d/zopectl restart | ~/init.d/zopectl restart | ||
- | == Создание сайта Plone == | + | === Создание сайта Plone === |
* Заходим в панель управления Zope: <nowiki>http://</nowiki>'''название_вашего_сайта''':'''zope_порт'''/manage, используя для авторизации параметры доступа по FTP. | * Заходим в панель управления Zope: <nowiki>http://</nowiki>'''название_вашего_сайта''':'''zope_порт'''/manage, используя для авторизации параметры доступа по FTP. | ||
'''zope_порт''' - порт, на котором работает Zope-даемон, указан в разделе кабинета /Хостинг HTTP служб/ | '''zope_порт''' - порт, на котором работает Zope-даемон, указан в разделе кабинета /Хостинг HTTP служб/ | ||
Строка 71: | Строка 69: | ||
Установка завершена, Plone сайт должен быть доступен по вашему основному URL адресу.<br /> | Установка завершена, Plone сайт должен быть доступен по вашему основному URL адресу.<br /> | ||
Демо версия доступна по адресу http://test-l13-zope.1gb.ru/ | Демо версия доступна по адресу http://test-l13-zope.1gb.ru/ | ||
+ | |||
+ | == Вариант 2: Самостоятельная установка компонентов Zope/Plone == | ||
+ | === Установка сервера Zope === | ||
+ | Аналогично варианту 1. По сути, этот пункт нам нужен только для того, чтобы в среде хостинга 1Gb.ru сайт был сконфигурирован в режим службы Zope (выделен порт, включен мониторинг). | ||
+ | |||
+ | === Подготовка окружения, установка вспомогательных программ === | ||
+ | |||
+ | * Создаем в корне домашнего каталога файл <code>.pydistutils.cfg</code> для настройки путей инсталляции модулей: | ||
+ | [install] | ||
+ | prefix = $HOME/python | ||
+ | |||
+ | [easy_install] | ||
+ | install_dir = $HOME/python/lib64/'''python2.6'''/site-packages | ||
+ | * Для настройки переменных <code>PATH</code>, <code>PYTHONPATH</code> добавьте строки: | ||
+ | export PATH=$PATH:$HOME/python/bin:$HOME/python/lib64/'''python2.6'''/site-packages | ||
+ | export PYTHONPATH=$PYTHONPATH:$HOME/python/lib64/'''python2.6'''/site-packages | ||
+ | в ваш <code>~/.bashrc '''в начало файла'''.</code> | ||
+ | |||
+ | * Выполняем команду: | ||
+ | source ~/.bashrc | ||
+ | для того, чтобы сделанные изменения вступили в силу. | ||
+ | |||
+ | * Создаем различные каталоги: | ||
+ | mkdir -p ~/src ~/python/lib64/'''python2.6'''/site-packages | ||
+ | * Симлинк: | ||
+ | cd ~/python; ln -s lib64 lib; cd | ||
+ | |||
+ | === Установка Plone === | ||
+ | Процесс установки будет описан на основе использования unified-установщика, но, безусловно, все то же самое можно установить по отдельности из исходных текстов. | ||
+ | |||
+ | * Из автоматически установленного Zope берем сетевые настройки: | ||
+ | awk '/address 81\./ {print $2}' ~/http/etc/zope.conf | ||
+ | результатом команды должен быть '''IP:PORT''', например, '''81.176.228.2:48014''', и запоминаем их где-нибудь. | ||
+ | И затем очищаем каталог http: | ||
+ | rm -rfv ~/http && mkdir ~/http | ||
+ | |||
+ | * С сайта http://plone.org скачиваем unified архив Plone для Linux/BSD/Unix: | ||
+ | cd ~/src; wget http://launchpad.net/plone/4.0/4.0.4/+download/Plone-4.0.4-UnifiedInstaller.tgz | ||
+ | распаковываем его: | ||
+ | tar xvfz Plone-*.tgz | ||
+ | |||
+ | * Конфигурируем и устанавливаем Plone: | ||
+ | cd Plone-* | ||
+ | ./install.sh --password='''ВАШ_ПАРОЛЬ''' --user='''FTP_ПОЛЬЗОВАТЕЛЬ''' --with-python=/usr/bin/python2.6 --target=$HOME/http '''zeo''' | ||
+ | |||
+ | - '''ВАШ_ПАРОЛЬ''' - пароль в администратора Zope/Plone, может быть любым<br /> | ||
+ | - '''FTP_ПОЛЬЗОВАТЕЛЬ''' - ftp пользователь, вида w_..., например, <code>w_test-l19-plone4_050c3c3c</code><br /> | ||
+ | - '''zeo''' - установка в режиме клиент-сервер, подробнее см. [http://plone.org/documentation/manual/installing-plone/installing-on-linux-unix-bsd/to-zeo-or-not-to-zeo тут]<br /> | ||
+ | Установка занимает несколько минут, надо дождаться. | ||
+ | |||
+ | Сообщение об успешной установке будет примерно таким: | ||
+ | ##################################################################### | ||
+ | ###################### Installation Complete ###################### | ||
+ | |||
+ | Plone successfully installed at ... | ||
+ | ... | ||
+ | Use the account information below to log into the Zope Management Interface | ||
+ | The account has full 'Manager' privileges. | ||
+ | |||
+ | Username: admin | ||
+ | Password: '''ВАШ_ПАРОЛЬ''' | ||
+ | |||
+ | === Настройка Plone === | ||
+ | * Редактируем файл <code>~/http/zeocluster/buildout.cfg</code> с помощью команды: | ||
+ | sed -i 's/^zeo-address .*$/zeo-address = 127.0.0.1:'''ВАШ_ПОРТ'''/;s/http-address .*$/http-address = '''ВАШ_IP''':'''ВАШ_ПОРТ'''/;/client2/d' ~/http/zeocluster/buildout.cfg | ||
+ | |||
+ | '''либо''' с помощью вашего любимого текствого редактора, в файле <code>buildout.cfg</code> нужно изменить директивы: | ||
+ | |||
+ | # ZEO Server | ||
+ | zeo-address = 127.0.0.1:'''PORT''' | ||
+ | # Zope client 1 | ||
+ | http-address = '''IP''':'''PORT''' | ||
+ | на то, что вы сохранили ранее. | ||
+ | |||
+ | Закомментировать строку <code>client2-address</code>: | ||
+ | # Zope client 2 | ||
+ | # '''client2-address = 8081''' | ||
+ | |||
+ | И строку <code>client2</code> из секции <code>parts</code>: | ||
+ | |||
+ | parts = | ||
+ | zeoserver | ||
+ | client1 | ||
+ | '''client2''' | ||
+ | zopepy | ||
+ | zopeskel | ||
+ | unifiedinstaller | ||
+ | backup | ||
+ | chown-zeo | ||
+ | |||
+ | * Файл <code>~/http/zeocluster/base.cfg</code> отредактировать командой: | ||
+ | sed -i '/\[client2\]/,/^$/s/^/# /' base.cfg | ||
+ | |||
+ | '''либо''' с помощью редактора закомментировать строки: | ||
+ | [client2] | ||
+ | # a copy of client1, except adjusted address and var location | ||
+ | <= client1 | ||
+ | http-address = ${buildout:client2-address} | ||
+ | event-log = ${buildout:directory}/var/client2/event.log | ||
+ | z2-log = ${buildout:directory}/var/client2/Z2.log | ||
+ | pid-file = ${buildout:directory}/var/client2/client2.pid | ||
+ | lock-file = ${buildout:directory}/var/client2/client2.lock | ||
+ | |||
+ | * Сохраняем конфигурацию: | ||
+ | cd ~/http/zeocluster && ./bin/buildout | ||
+ | |||
+ | * Создаем симлинк для автозапуска Plone: | ||
+ | cd ~/init.d && ln -sf ../http/zeocluster/bin/plonectl zopectl | ||
+ | |||
+ | Через минуту приложение запустится автоматически, либо можно сразу запустить его вручную: | ||
+ | ~/init.d/zopectl start | ||
+ | zeoserver: . | ||
+ | daemon process started, pid=32576 | ||
+ | client1: . | ||
+ | daemon process started, pid=788 | ||
+ | |||
+ | * Можно зайти на сайт <nowiki>http://ваш_сайт</nowiki>:'''ВАШ_ПОРТ''' | ||
+ | [[Изображение:Plone4 default.jpg|600px|thumb|center|Plone - стартовая страница]]<br clear="both" /> | ||
+ | |||
+ | === Создание сайта Plone === | ||
+ | * Откройте сайт <nowiki>http://ваш_сайт</nowiki>:'''ВАШ_ПОРТ''' и нажмите кнопку "Создать новый Плон сайт" | ||
+ | [[Изображение:Plone4 default add.jpg|600px|thumb|center|Plone - создание сайта]]<br clear="both" /> | ||
+ | |||
+ | * Установите параметры сайта: | ||
+ | [[Изображение:Plone4 default create.jpg|600px|thumb|center|Plone - параметры]]<br clear="both" /> | ||
+ | |||
+ | '''ВАЖНО''': '''идентификатор пути''' - '''URL вашего сайта, без http, без www'''. Например, '''test-l19-plone4.1gb.ru''' | ||
+ | Все остальное - произвольно. | ||
+ | |||
+ | * После нажатия кнопки, вы перейдете на главную страницу вашего сайта: | ||
+ | [[Изображение:Plone4 default done.jpg|600px|thumb|center|Plone - сайт готов к работе]]<br clear="both" /> | ||
+ | |||
+ | Также на сайт можно зайти по нормальному адресу (без указания порта). Демо версия доступна тут: http://test-l19-plone4.1gb.ru/ | ||
== Если ничего не работает == | == Если ничего не работает == |
Версия 17:03, 5 апреля 2011
Содержание |
Общие сведения
Статья представляет собой пошаговое руководство, позволяющие быстро развернуть CMS Plone с использованием хостинга 1Gb.ru. Возможны два варианта развертывания приложения: с использованием версий уже установленных на хостинге и самостоятельная сборка и установка компонентов.
Фактически, оба способа похожи друг на друга и требуют одинакового уровня понимания процесса установки. Главное отличие второго способа, это возможность использования любых версий приложений и более полный над ними контроль.
Вариант 1: Использование предустановленных компонентов Zope/Plone
Установка сервера Zope
- В разделе личного кабинета /Хостинг HTTP служб/ нужно переключить сайт в режим хостинга Zope. Через 1-3 часа проверить, открыв сайт в обозревателе. Если все в порядке, вы увидите примерно такую страницу:
Zope готов к работе.
Подготовка окружения, установка вспомогательных программ
Т.к. Zope/Plone требуют наличия языка Python версии 2.4, то все дополнительные модули необходимо будет установить именно с учетом этой версии в свой домашний каталог.
- Создаем в корне домашнего каталога файл
.pydistutils.cfg
для настройки путей инсталляции модулей:
[install] prefix = $HOME/python [easy_install] install_dir = $HOME/python/lib64/python2.4/site-packages
- Для настройки переменных
PATH
,PYTHONPATH
добавьте строки:
export PATH=$PATH:$HOME/python/bin:$HOME/python/lib64/python2.4/site-packages export PYTHONPATH=$PYTHONPATH:$HOME/python/lib64/python2.4/site-packages
в ваш ~/.bashrc в начало файла.
- Выполняем команду:
source ~/.bashrc
для того, чтобы сделанные изменения вступили в силу.
- Создаем различные каталоги:
mkdir -p ~/src ~/python/lib64/python2.4/site-packages
- Симлинк:
cd ~/python; ln -s lib64 lib; cd
- Устанавливаем Setuptools
С сайта http://pypi.python.org/pypi/setuptools#downloads скачиваем egg
пакет для версии Python 2.4,
cd ~/src && wget http://pypi.python.org/packages/2.4/s/setuptools/setuptools-0.6c11-py2.4.egg#md5=bd639f9b0eac4c42497034dec2ec0c2b
установка:
/bin/bash setuptools-0.6c11-py2.4.egg --prefix=$HOME/python
Для того, чтобы запускался наш easy_install, добавляем псевдоним команды в .bashrc:
echo 'alias easy_install="$HOME/python/bin/easy_install"' >> ~/.bashrc && source ~/.bashrc
- Установка дополнительных модулей необходимых для запуска Plone в стандартной конфигурации:
PIL:
cd ~/src && wget http://effbot.org/downloads/Imaging-1.1.7.tar.gz cd Imaging-1.1.7 && python2.4 setup.py install
OpenID:
easy_install python-openid
Установка Plone
- Скопируйте файлы Plone в свой
instance
командой:
/usr/sbin/zprod-manager add /usr/share/zproduct/plone-3.* ~/http
- Перезапустите Zope:
~/init.d/zopectl restart
Создание сайта Plone
- Заходим в панель управления Zope: http://название_вашего_сайта:zope_порт/manage, используя для авторизации параметры доступа по FTP.
zope_порт - порт, на котором работает Zope-даемон, указан в разделе кабинета /Хостинг HTTP служб/
- Из выпадающего меню выбираем "Plone site" -> ADD
- Поля конфигурации Plone заполняем следующим образом:
ID - название_вашего_сайта
Title - любой текст (это то, что будет отображаться в HTML тэге title
)
-> ADD Plone site
Установка завершена, Plone сайт должен быть доступен по вашему основному URL адресу.
Демо версия доступна по адресу http://test-l13-zope.1gb.ru/
Вариант 2: Самостоятельная установка компонентов Zope/Plone
Установка сервера Zope
Аналогично варианту 1. По сути, этот пункт нам нужен только для того, чтобы в среде хостинга 1Gb.ru сайт был сконфигурирован в режим службы Zope (выделен порт, включен мониторинг).
Подготовка окружения, установка вспомогательных программ
- Создаем в корне домашнего каталога файл
.pydistutils.cfg
для настройки путей инсталляции модулей:
[install] prefix = $HOME/python [easy_install] install_dir = $HOME/python/lib64/python2.6/site-packages
- Для настройки переменных
PATH
,PYTHONPATH
добавьте строки:
export PATH=$PATH:$HOME/python/bin:$HOME/python/lib64/python2.6/site-packages export PYTHONPATH=$PYTHONPATH:$HOME/python/lib64/python2.6/site-packages
в ваш ~/.bashrc в начало файла.
- Выполняем команду:
source ~/.bashrc
для того, чтобы сделанные изменения вступили в силу.
- Создаем различные каталоги:
mkdir -p ~/src ~/python/lib64/python2.6/site-packages
- Симлинк:
cd ~/python; ln -s lib64 lib; cd
Установка Plone
Процесс установки будет описан на основе использования unified-установщика, но, безусловно, все то же самое можно установить по отдельности из исходных текстов.
- Из автоматически установленного Zope берем сетевые настройки:
awk '/address 81\./ {print $2}' ~/http/etc/zope.conf
результатом команды должен быть IP:PORT, например, 81.176.228.2:48014, и запоминаем их где-нибудь. И затем очищаем каталог http:
rm -rfv ~/http && mkdir ~/http
- С сайта http://plone.org скачиваем unified архив Plone для Linux/BSD/Unix:
cd ~/src; wget http://launchpad.net/plone/4.0/4.0.4/+download/Plone-4.0.4-UnifiedInstaller.tgz
распаковываем его:
tar xvfz Plone-*.tgz
- Конфигурируем и устанавливаем Plone:
cd Plone-* ./install.sh --password=ВАШ_ПАРОЛЬ --user=FTP_ПОЛЬЗОВАТЕЛЬ --with-python=/usr/bin/python2.6 --target=$HOME/http zeo
- ВАШ_ПАРОЛЬ - пароль в администратора Zope/Plone, может быть любым
- FTP_ПОЛЬЗОВАТЕЛЬ - ftp пользователь, вида w_..., например, w_test-l19-plone4_050c3c3c
- zeo - установка в режиме клиент-сервер, подробнее см. тут
Установка занимает несколько минут, надо дождаться.
Сообщение об успешной установке будет примерно таким:
##################################################################### ###################### Installation Complete ###################### Plone successfully installed at ... ... Use the account information below to log into the Zope Management Interface The account has full 'Manager' privileges. Username: admin Password: ВАШ_ПАРОЛЬ
Настройка Plone
- Редактируем файл
~/http/zeocluster/buildout.cfg
с помощью команды:
sed -i 's/^zeo-address .*$/zeo-address = 127.0.0.1:ВАШ_ПОРТ/;s/http-address .*$/http-address = ВАШ_IP:ВАШ_ПОРТ/;/client2/d' ~/http/zeocluster/buildout.cfg
либо с помощью вашего любимого текствого редактора, в файле buildout.cfg
нужно изменить директивы:
# ZEO Server zeo-address = 127.0.0.1:PORT # Zope client 1 http-address = IP:PORT
на то, что вы сохранили ранее.
Закомментировать строку client2-address
:
# Zope client 2 # client2-address = 8081
И строку client2
из секции parts
:
parts = zeoserver client1 client2 zopepy zopeskel unifiedinstaller backup chown-zeo
- Файл
~/http/zeocluster/base.cfg
отредактировать командой:
sed -i '/\[client2\]/,/^$/s/^/# /' base.cfg
либо с помощью редактора закомментировать строки: [client2]
# a copy of client1, except adjusted address and var location <= client1 http-address = ${buildout:client2-address} event-log = ${buildout:directory}/var/client2/event.log z2-log = ${buildout:directory}/var/client2/Z2.log pid-file = ${buildout:directory}/var/client2/client2.pid lock-file = ${buildout:directory}/var/client2/client2.lock
- Сохраняем конфигурацию:
cd ~/http/zeocluster && ./bin/buildout
- Создаем симлинк для автозапуска Plone:
cd ~/init.d && ln -sf ../http/zeocluster/bin/plonectl zopectl
Через минуту приложение запустится автоматически, либо можно сразу запустить его вручную:
~/init.d/zopectl start zeoserver: . daemon process started, pid=32576 client1: . daemon process started, pid=788
- Можно зайти на сайт http://ваш_сайт:ВАШ_ПОРТ
Создание сайта Plone
- Откройте сайт http://ваш_сайт:ВАШ_ПОРТ и нажмите кнопку "Создать новый Плон сайт"
- Установите параметры сайта:
ВАЖНО: идентификатор пути - URL вашего сайта, без http, без www. Например, test-l19-plone4.1gb.ru Все остальное - произвольно.
- После нажатия кнопки, вы перейдете на главную страницу вашего сайта:
Также на сайт можно зайти по нормальному адресу (без указания порта). Демо версия доступна тут: http://test-l19-plone4.1gb.ru/
Если ничего не работает
Основным средством для понимания того, что происходит с Zope, являются лог-файлы. Найти их можно в каталоге ~/http/log, либо обратитесь в поддержку https://www.1gb.ru/about_support.php