Pylons - быстрый старт
Материал из 1GbWiki.
Версия 17:41, 15 ноября 2016 (править) Renton (Обсуждение | вклад) (→Обшие сведения) ← К предыдущему изменению |
Версия 19:20, 15 ноября 2016 (править) (отменить) Renton (Обсуждение | вклад) (→Подготовка окружения) К следующему изменению → |
||
Строка 19: | Строка 19: | ||
== Подготовка окружения == | == Подготовка окружения == | ||
- | + | '''1.''' В личном кабинете, в разделе [https://www.1gb.ru/c/httpdaemon Услуги хостинга HTTP служб] включите поддержку Django/WSGI для сайта: | |
- | + | [[Изображение:Django-new-1.jpg|600px|thumb|left|Django - добавление службы]]<br clear="both" /> | |
- | $ | + | |
+ | '''2.''' Зайдите на сервер по [http://www.1gb.ru/putty SSH] и запустите команду: | ||
+ | $ /opt/hostpublic/sbin/1gb_virtenv_install.sh | ||
+ | |||
+ | '''2.1.''' Укажите нужную версию Python (по умолчанию ставится stable версия из ветки 3.5): | ||
+ | Install latest Python 2.x or 3.x release (choices: 2, 3, 3.2, 3.3, 3.4) [default '''3''']: | ||
+ | Список поддерживаемых версий Python можно посмотреть тут http://docs.pylonsproject.org/projects/pyramid/en/latest/narr/install.html | ||
+ | |||
+ | Установка занимает несколько минут.<br /><br /> | ||
+ | '''2.2.''' Далее команда спросит имя папки куда будет установлен пакет virtualenv. Этот параметр не принципиален, поэтому можно оставить значение по умолчанию или задать любое другое имя, например, '''pyramid-env''' и нажать ENTER | ||
+ | Enter the name of new virtual environment you want to create [default: django-env]: | ||
+ | |||
+ | Результатом работы команды 1gb_virtenv_install.sh будет установленный в папку ~/local Python и пакет virtualenv, а также виртуальное окружение из которого будет запускаться Pyramid.<br /><br /> | ||
+ | |||
+ | '''3.''' Все последующие команды будут выполняться из виртуального окружения. Для активации окружения выполните команду: | ||
+ | $ source ~/.bashrc | ||
+ | $ v_activate | ||
+ | |||
+ | '''4.''' Устанавливаем web-сервер | ||
+ | (django-env) $ pip install gunicorn; pip install futures | ||
== Установка библиотек== | == Установка библиотек== |
Версия 19:20, 15 ноября 2016
Данная статья предназначена для технических специалистов. Вы должны знать основы программирования, уметь пользоваться консольными программами и официальной документацией от разработчиков. В связи с тем, что на сервере могут обновиться версии программ, измениться конфигурация приложений, документация в статье может не соответствовать действительности, поэтому вы должны быть готовы разобраться с возможными проблемами самостоятельно или с помощью специалистов из платной поддержки http://1gbsup.ru/paidsu/, обычная поддержка хостинга не оказывает консультации по установке и отладке скриптов. |
Содержание |
Обшие сведения
Pylons - еще один замечательный, легковесный фреймворк написанный на языке Python. На текущий момент прекращена его активная разработка. Что касается его дальнейшего развития, то оно продолжено в рамках проекта Pyramid.
На виртуальном хостинге 1Gb.ru его можно запускать как WSGI приложение. Установка и настройка очень похожа на развертывание Django - быстрый старт (поддерживаемая версия) и не представляет особого труда.
Подготовка окружения
1. В личном кабинете, в разделе Услуги хостинга HTTP служб включите поддержку Django/WSGI для сайта:
2. Зайдите на сервер по SSH и запустите команду:
$ /opt/hostpublic/sbin/1gb_virtenv_install.sh
2.1. Укажите нужную версию Python (по умолчанию ставится stable версия из ветки 3.5):
Install latest Python 2.x or 3.x release (choices: 2, 3, 3.2, 3.3, 3.4) [default 3]:
Список поддерживаемых версий Python можно посмотреть тут http://docs.pylonsproject.org/projects/pyramid/en/latest/narr/install.html
Установка занимает несколько минут.
2.2. Далее команда спросит имя папки куда будет установлен пакет virtualenv. Этот параметр не принципиален, поэтому можно оставить значение по умолчанию или задать любое другое имя, например, pyramid-env и нажать ENTER
Enter the name of new virtual environment you want to create [default: django-env]:
Результатом работы команды 1gb_virtenv_install.sh будет установленный в папку ~/local Python и пакет virtualenv, а также виртуальное окружение из которого будет запускаться Pyramid.
3. Все последующие команды будут выполняться из виртуального окружения. Для активации окружения выполните команду:
$ source ~/.bashrc $ v_activate
4. Устанавливаем web-сервер
(django-env) $ pip install gunicorn; pip install futures
Установка библиотек
1. Устанавливаем Pylons:
$ easy_install Pylons
2. Устанавливаем модуль flup, для работы Pylons в FastCGI режиме:
$ easy_install flup
если установка заканчивается так:
error: None
то устанавливаем flup по прямой ссылке:
$ easy_install "http://pypi.python.org/packages/source/f/flup/flup-1.0.2.tar.gz#md5=24dad7edc5ada31dddd49456ee8d5254"
Настройка приложения
1. Создаем структуру приложения:
$ cd ~/pylons && paster create -t pylons my_project
2. Создаем файл диспетчера index.fcgi в каталоге ~/http
:
$ cat > ~/http/index.fcgi <<END #!/usr/bin/${PYTHON_VERSION} import sys, os, site, pkg_resources # Add a custom Python path. PYTHON_CUSTOM_PATH = os.path.abspath (os.path.join (os.path.dirname (os.path.abspath (__file__)), \ '../python/lib64/${PYTHON_VERSION}/site-packages')) sys.path.insert (0, PYTHON_CUSTOM_PATH) site.addsitedir (PYTHON_CUSTOM_PATH) pkg_resources.working_set.add_entry (PYTHON_CUSTOM_PATH) # Add a custom Python path. PYTHON_CUSTOM_PATH = os.path.abspath (os.path.join (os.path.dirname (os.path.abspath (__file__)), \ '../pylons')) sys.path.insert (0, PYTHON_CUSTOM_PATH) pkg_resources.working_set.add_entry (PYTHON_CUSTOM_PATH) from paste.deploy import loadapp from flup.server.fcgi import WSGIServer pkg_resources.working_set.add_entry('/home/virtwww/$(whoami)/pylons/my_project') app = loadapp('config:/home/virtwww/$(whoami)/pylons/my_project/test.ini') server = WSGIServer(app) server.run() END
3. Файл .htaccess
, также в каталоге ~/http
:
$ cat > ~/http/.htaccess <<"END" Options +FollowSymlinks AddHandler fcgid-script .fcgi RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.fcgi/$1 [QSA,L] END
5. Выставляем права на выполнение:
$ chmod 755 ~/http/index.fcgi; rm -v ~/http/index.html
4. Установка завершена, если все сделано правильно, то при запросе своего сайта появится тестовая страница приложения.
Демо версию Pylons, установленного на хостинге 1Gb.ru, можно посмотреть по этому адресу http://test-l11-pylons.1gb.ru/
См. также
Ссылки
- Pylons Project home page (англ.) — страница проекта Pylons.
- Pylons Book (англ.) — подробное руководство по Pylons.
- Pylons Book (рус.) — перевод руководство по Pylons на русский.
- Форум по Pylons (рус.) — форум по Pylons.