Добавление сайта

Для того чтобы запустить WSGI приложение, следует убедиться, что выбранный тариф поддерживает технологию WSGI. На данный момент в ознакомительном режиме WSGI возможно использовать на одном сайте по тарифу PARMA и в нормальном режиме на двух сайтах по тарифу CALMA.

При добавлении сайта в панели управления (Управление сайтами) будет предложено выбрать типа сайта "классический сайт" или "WSGI-сайт". Такой же выбор есть в настройках каждого существующего сайта. Следует выбрать WSGI-сайт. Если лимит специализированных сайтов для тарифного плана не превышен - через полчаса можно начать работу с WSGI.

ВНИМAНИЕ!
WSGI-сайт не поддерживает PHP и CGI. Невозможно использовать PHP, CGI и WSGI в рамках одного сайта.

Настройка приложения

У каждого сайта на сервере есть каталог вида:
/home/<ваш логин>/www/site<номер сайта>/webapp/
Например: /home/pupkin/www/site1/webapp/
В этом каталоге требуется создать файл именуемый webapp.wsgi. Именно он будет описывать Ваше WSGI-приложение. Это должна быть программа на языке программирования Python, содержащий как минимум функцию именуемую application, являющуюся приложением WSGI. Именно эту функцию будет пытаться вызвать наш сервер при запросах. Например:
def my_wsgi_application(environ, start_response):
	status = '200 OK'
	output = 'Hello World!'
	response_headers = [('Content-type', 'text/plain')]
	start_response(status, response_headers)
	return [output]
application = my_wsgi_application
Обращения к приложению должны происходить по URL http://<один из доменов сайта>/webapp/* Содержимое же корня сайта как и в обычных сайтах по прежнему расположено в каталоге /home/<ваш логин>/www/site<номер сайта>/public_html/ на сервере. Если требуются другие пути - измените их при помощи Rewrite-правил в файле .htaccess (документация на сайте веб-сервера apache) Например, для того чтобы обращения к сайту от корня обрабатывались wsgi-приложением, положите в каталог /home/<ваш логин>/www/site<номер сайта>/public_html/ файл .htaccess со следующим содержанием:
RewriteEngine On
RewriteRule ^(.*)$ /webapp/$1 [L,QSA]
ВАЖНО!
Если Вы используете локальную установку (в свой домашний каталог НЕ уникальных библиотек (т.е. не разработанных Вами, а публично распространяемых), следует путь к ним добавлять не в конец системного массива как рекомендуют многие руководства:
sys.path.append('путь к библиотеке')
а в начало его:
sys.path.insert(0,'путь к библиотеке')
Это позволит избежать возможных проблем в том случае, если мы решим поддерживать ту или иную библиотеку штатным образом, но не из той ветки, которая используется вашим приложением.

Обновление приложение

Технологической особенностью нашего хостинга является то, что наш сервер удерживает операционный код приложения в памяти. Для автоматической перезагрузки кода требуется изменить дату модификации файла webapp.wsgi. Например, из shell такой вот командой:

[user@babylon] ~/www/site1/webapp$ touch webapp.wsgi
© 2006 — ООО «Дремучий лес»
Служба техподдержки: support@diphost.ru
Политика обработки персональных данных Отзывы о хостинге diphost.ru Отзывы на hostobzor.ru