Pylons - быстрый старт

Материал из 1GbWiki.

(Различия между версиями)
Перейти к: навигация, поиск
Версия 10:09, 10 февраля 2013 (править)
Renton (Обсуждение | вклад)
(Настройка приложения)
← К предыдущему изменению
Версия 11:53, 10 февраля 2013 (править) (отменить)
Renton (Обсуждение | вклад)
(Настройка приложения)
К следующему изменению →
Строка 39: Строка 39:
'''2.''' Создаем файл диспетчера index.fcgi в каталоге <code>~/http</code> : '''2.''' Создаем файл диспетчера index.fcgi в каталоге <code>~/http</code> :
$ cat > ~/http/index.fcgi <<END $ cat > ~/http/index.fcgi <<END
- #!/usr/bin/${PYTHON_VERSION} -OO+ #!/usr/bin/${PYTHON_VERSION}
import sys, os, site, pkg_resources import sys, os, site, pkg_resources

Версия 11:53, 10 февраля 2013



Данная статья предназначена для технических специалистов.

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

В связи с тем, что на сервере могут обновиться версии программ, измениться конфигурация приложений, документация в статье может не соответствовать действительности, поэтому вы должны быть готовы разобраться с возможными проблемами самостоятельно или с помощью специалистов из платной поддержки http://1gbsup.ru/paidsu/, обычная поддержка хостинга не оказывает консультации по установке и отладке скриптов.



Содержание

Обшие сведения

Pylons - еще один замечательный, легковесный фреймворк написанный на языке Python. На текущий момент прекращена его активная разработка. Что касается его дальнейшего развития, то оно продолжено в рамках проекта Pyramid.
На виртуальном хостинге 1Gb.ru его можно запускать как FastCGI приложение. Установка и настройка очень похожа на развертывание Django и не представляет особого труда.

Подготовка окружения

Данный этап установки ничем не отличается от инструкции по установке Django, поэтому обратитесь к статье Django#Подготовка окружения и выполните пункты 1 - 7, за исключением пункта 2. Вместо пункта 2 из инструкции "установка Django" выполните такую команду:

$ mkdir -p ~/src ~/python/bin ~/python/lib64/${PYTHON_VERSION}/site-packages ~/pylons

Установка библиотек

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/

См. также

Ссылки

Личные инструменты