Настройка WSGI
Материал из DiPHOST.Ru wiki system
Schors (Обсуждение | вклад) |
Schors (Обсуждение | вклад) (→Настройка приложения) |
||
Строка 23: | Строка 23: | ||
application = my_wsgi_application | application = my_wsgi_application | ||
</source> | </source> | ||
- | Обращения к приложению должны происходить по URL ''''<nowiki>http://<один из доменов сайта>/webapp/*</nowiki>'''' Содержимое же корня сайта как и в обычных сайтах по прежнему расположено в каталоге ''/home/<ваш логин>/www/site<номер сайта>/public_html/'' на сервере. Если требуются другие пути - измените их при помощи Rewrite-правил в файле .htaccess ([http://httpd.apache.org/docs/2.2/rewrite/ документация на сайте веб-сервера apache]) Например, для того чтобы обращения к сайту от корня обрабатывались wsgi-приложением, положите в каталог ''/home/<ваш логин>/www/site<номер сайта>/public_html/'' файл .htaccess со следующим содержанием: | + | Обращения к приложению должны происходить по URL '''' <nowiki>http://<один из доменов сайта>/webapp/*</nowiki> '''' Содержимое же корня сайта как и в обычных сайтах по прежнему расположено в каталоге ''/home/<ваш логин>/www/site<номер сайта>/public_html/'' на сервере. Если требуются другие пути - измените их при помощи Rewrite-правил в файле .htaccess ([http://httpd.apache.org/docs/2.2/rewrite/ документация на сайте веб-сервера apache]) Например, для того чтобы обращения к сайту от корня обрабатывались wsgi-приложением, положите в каталог ''/home/<ваш логин>/www/site<номер сайта>/public_html/'' файл .htaccess со следующим содержанием: |
RewriteEngine On | RewriteEngine On | ||
RewriteRule ^(.*)$ /webapp/$1 [L,QSA] | RewriteRule ^(.*)$ /webapp/$1 [L,QSA] |
Версия 18:29, 3 апреля 2010
Добавление сайта
Для того чтобы запустить WSGI приложение, следует убедиться, что выбранный тариф поддерживает технологию WSGI. На данный момент в ознакомительном режиме WSGI возможно использовать на одном сайте по тарифу PARMA и в нормальном режиме на двух сайтах по тарифу CALMA.
При добавлении сайта в панели управления (Управление сайтами) будет предложено выбрать типа сайта "классический сайт" или "WSGI-сайт". Такой же выбор есть в настройках каждого существующего сайта. Следует выбрать WSGI-сайт. Если лимит специализированных сайтов для тарифного плана не превышен - через несколько минут можно начать работу с WSGI.
ВНИМАНИЕ! WSGI-сайт не поддерживает PHP и CGI. Невозможно использовать PHP, CGI и WSGI в рамках одного сайта. |
Настройка приложения
У каждого сайта на сервере есть каталог вида:
- /home/<ваш логин>/www/site<номер сайта>/webapp/
- Например: /home/pupkin/www/site1/webapp/
В этом каталоге требуется создать файл именуемый webapp.wsgi. Именно он будет описывать Ваше WSGI-приложение. Это должна быть программа на языке программирования Python, содержащий как минимум функцию именуемую application, являющуюся приложением 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)Обращения к приложению должны происходить по 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]
Обновление приложение
Технологической особенностью нашего хостинга является то, что наш сервер удерживает операционный код приложения в памяти. Для автоматической перезагрузки кода требуется изменить дату модификации файла webapp.wsgi. Например, из shell такой вот командой:
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)