Настройка Pylons

Материал из DiPHOST.Ru wiki system

(Различия между версиями)
Перейти к: навигация, поиск
(Новая страница: «<meta name="keywords" content="wsgi, python, pylons"></meta> <meta name="description" content="Настройка Pylons"></meta> <meta name="title" content="Нас…»)
Строка 2: Строка 2:
<meta name="description" content="Настройка Pylons"></meta>
<meta name="description" content="Настройка Pylons"></meta>
<meta name="title" content="Настройка Pylons"></meta>
<meta name="title" content="Настройка Pylons"></meta>
 +
 +
Данное руководство не является документацией по web-фреймворку Pylons. Предполагается, что пользователь данного фреймворка знаком с его основами.
 +
 +
Кроме того, в качестве ORM используется SQLAlchemy. Ввиду того, что это, по-видимому, наиболее популярный и многофункциональный ORM для python, возможность его использования для web-приложений является весьма привлекательной.
 +
 +
Кроме того, данное руководство описывает только процесс запуска pylons-проекта на хостинге. Создание egg-файлов, документации и т.п. не описывается.
 +
 +
====Версии====
 +
Используется Pylons 0.9.7 и все идущие вместе с фреймворком пакеты, которые устанавливаются на локальный компьютер при помощи утилиты easy_install. Например, все верно для версий:
 +
* beaker-1.3-py2.5
 +
* decorator-3.0.0-py2.5
 +
* formencode-1.2.1-py2.5
 +
* mako-0.2.4-py2.5
 +
* nose-0.10.4-py2.5
 +
* paste-1.7.2-py2.5
 +
* pastedeploy-1.3.3-py2.5
 +
* pastescript-1.7.3-py2.5
 +
* Pygments-1.0-py2.5
 +
* pylons-0.9.7-py2.5
 +
* routes-1.10.3-py2.5
 +
* weberror-0.10.1-py2.5
 +
* webhelpers-0.6.4-py2.5
 +
* simplejson-2.0.8-py2.5-win32
 +
* tempita-0.2-py2.5
 +
* webob-0.9.6.1-py2.5
 +
* webtest-1.1-py2.5
 +
* sqlalchemy-0.5.0-py2.5
 +
* pysqlite2
 +
 +
====Установка====
 +
 +
# Создаем в домашней директории директорию packages:
 +
<source lang="bash">
 +
[user@babylon] ~$ mkdir ~/packages
 +
</source>
 +
 +
# Копируем необходимые пакеты с локальной машины в созданную директорию packages (например, при помощи [[AccessFTP]]).
 +
# В public_html директории Вашего WSGI-сайта создаем файл .htaccess следующего содержания:
 +
RewriteEngine On
 +
RewriteRule ^(.*)$ /webapp/$1 [L,QSA]
 +
# На локальной машине создаем конфигурационный файл вашего проекта (для проекта под названием myapp) командой:
 +
<source lang="bash">
 +
[user@babylon] ~$ paster make-config myapp production.ini
 +
</source>
 +
{{warning|параметр отладки должен быть отключен:<br/>
 +
      set debug = false}}
 +
# Всю директорию проекта myapp переносим на сервер (например, в директорию ~/myapp)
 +
# Настраиваем WSGI-коннектор на хостинге. В файл webapp.wsgi в директории webapp WSGI-сайта пишем следующее:
 +
<source lang="py">
 +
      # -*- coding: utf-8 -*-
 +
 +
      import sys, os
 +
 +
      # Путь к директории пользователя
 +
      prefix = os.abspath('~/')
 +
 +
      # Делаем нужные пакеты видимыми для интерпретатора
 +
      sys.path.insert(0, prefix + 'packages/beaker-1.3-py2.5.egg')
 +
      sys.path.insert(0, prefix + 'packages/decorator-3.0.0-py2.5.egg')
 +
      sys.path.insert(0, prefix + 'packages/formencode-1.2.1-py2.5.egg')
 +
      sys.path.insert(0, prefix + 'packages/mako-0.2.4-py2.5.egg')
 +
      sys.path.insert(0, prefix + 'packages/nose-0.10.4-py2.5.egg')
 +
      sys.path.insert(0, prefix + 'packages/paste-1.7.2-py2.5.egg')
 +
      sys.path.insert(0, prefix + 'packages/pastedeploy-1.3.3-py2.5.egg')
 +
      sys.path.insert(0, prefix + 'packages/pastescript-1.7.3-py2.5.egg')
 +
      sys.path.insert(0, prefix + 'packages/Pygments-1.0-py2.5.egg')
 +
      sys.path.insert(0, prefix + '/packages/pylons-0.9.7-py2.5.egg')
 +
      sys.path.insert(0, prefix + 'packages/routes-1.10.3-py2.5.egg')
 +
      sys.path.insert(0, prefix + 'packages/sqlalchemy-0.5.0rc1-py2.5.egg')
 +
      sys.path.insert(0, prefix + 'packages/weberror-0.10.1-py2.5.egg')
 +
      sys.path.insert(0, prefix + 'packages/webhelpers-0.6.4-py2.5.egg')
 +
      sys.path.insert(0, prefix + 'packages/simplejson-2.0.8-py2.5-win32.egg')
 +
      sys.path.insert(0, prefix + 'packages/tempita-0.2-py2.5.egg')
 +
      sys.path.insert(0, prefix + 'packages/webob-0.9.6.1-py2.5.egg')
 +
      sys.path.insert(0, prefix + 'packages/webtest-1.1-py2.5.egg')
 +
      sys.path.insert(0, prefix + 'myapp/')
 +
 +
      os.environ['PYTHON_EGG_CACHE']= prefix + 'myapp/python-eggs'
 +
 +
      # Запуск wsgi приложения
 +
      from paste.deploy import loadapp
 +
 +
      application = loadapp("config:" + prefix + "myapp/production.ini")
 +
</source>
 +
Где ''username'' - это Ваш логин на хостинге.
 +
# Посещаем свою страницу и видим работающее приложение myapp
 +
[[Category:WSGI]]
[[Category:WSGI]]

Версия 19:10, 3 апреля 2010

Данное руководство не является документацией по web-фреймворку Pylons. Предполагается, что пользователь данного фреймворка знаком с его основами.

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

Кроме того, данное руководство описывает только процесс запуска pylons-проекта на хостинге. Создание egg-файлов, документации и т.п. не описывается.

Версии

Используется Pylons 0.9.7 и все идущие вместе с фреймворком пакеты, которые устанавливаются на локальный компьютер при помощи утилиты easy_install. Например, все верно для версий:

  • beaker-1.3-py2.5
  • decorator-3.0.0-py2.5
  • formencode-1.2.1-py2.5
  • mako-0.2.4-py2.5
  • nose-0.10.4-py2.5
  • paste-1.7.2-py2.5
  • pastedeploy-1.3.3-py2.5
  • pastescript-1.7.3-py2.5
  • Pygments-1.0-py2.5
  • pylons-0.9.7-py2.5
  • routes-1.10.3-py2.5
  • weberror-0.10.1-py2.5
  • webhelpers-0.6.4-py2.5
  • simplejson-2.0.8-py2.5-win32
  • tempita-0.2-py2.5
  • webob-0.9.6.1-py2.5
  • webtest-1.1-py2.5
  • sqlalchemy-0.5.0-py2.5
  • pysqlite2

Установка

  1. Создаем в домашней директории директорию packages:

Process '/usr/local/bin/highlight --fragment --style=jedit --syntax='bash' --style-outfile='/home/dipwiki/tmp/highlight.css'' failed to start?

You need to specify a language like this: <source lang="html">...</source>

Supported languages for syntax highlighting:

(error loading support language list)
  1. Копируем необходимые пакеты с локальной машины в созданную директорию packages (например, при помощи Загрузка файлов на сервер по протоколу FTP).
  2. В public_html директории Вашего WSGI-сайта создаем файл .htaccess следующего содержания:
RewriteEngine On
RewriteRule ^(.*)$ /webapp/$1 [L,QSA]
  1. На локальной машине создаем конфигурационный файл вашего проекта (для проекта под названием myapp) командой:

Process '/usr/local/bin/highlight --fragment --style=jedit --syntax='bash' --style-outfile='/home/dipwiki/tmp/highlight.css'' failed to start?

You need to specify a language like this: <source lang="html">...</source>

Supported languages for syntax highlighting:

(error loading support language list)
File:Messagebox warning.png ВНИМАНИЕ!
{{{1}}}
  1. Всю директорию проекта myapp переносим на сервер (например, в директорию ~/myapp)
  2. Настраиваем WSGI-коннектор на хостинге. В файл webapp.wsgi в директории webapp WSGI-сайта пишем следующее:

Process '/usr/local/bin/highlight --fragment --style=jedit --syntax='py' --style-outfile='/home/dipwiki/tmp/highlight.css'' failed to start?

You need to specify a language like this: <source lang="html">...</source>

Supported languages for syntax highlighting:

(error loading support language list)

Где username - это Ваш логин на хостинге.

  1. Посещаем свою страницу и видим работающее приложение myapp
Источник — «https://wiki.diphost.ru/PylonsSetup»

Категория:

Личные инструменты
© 2006 — ООО «Дремучий лес»
Служба техподдержки: support@diphost.ru
Тексты этого сайта являются полностью оригинальными
или оригинальными компиляциями ООО «Дремучий Лес».
Распространяются по лицензии WTFPL
Отзывы о хостинге diphost.ru Отзывы на hostobzor.ru