Очень простое приложение WSGI может выглядеть следующим образом:
def application(environ, start_response):
start_response('200 OK', [('content-type', 'text/html')])
return ['Hello world!']
К сожалению, если вы поместите это в helloworld.py на сервере, а затем перейдите к URL/helloworld.py вы, скорее всего, увидеть код ,
В общем, вам необходимо добавить на сервер (или в файл конфигурации сервера) очень конкретные параметры конфигурации, чтобы он правильно служил вашему приложению python. При использовании mod_wsgi на Apache 2, конфигурация может выглядеть следующим образом:
<VirtualHost *>
ServerName example.com
WSGIScriptAlias /server/location/address /path/to/helloworld.py
</VirtualHost>
Где/сервер/местоположение/адрес является конечной точкой URL вы должны просмотреть.
Это связано с тем, что WSGI python улавливает все URL-адреса, переданные ему, и толкает их в ту же точку входа (ваш метод/класс приложения). И из информации, полученной в параметрах, приложение должно решить, какую страницу вернуться.
Поскольку эта информация настолько специфична для приложения, «должен быть» способ ее настройки на сервере, однако мне еще предстоит встретить панель настройки веб-хостинга, которая позволяет настраивать приложения Python. Обычно это означает, что вам нужно связаться с администраторами сервера и настроить их для вас.
Однако в целом, когда вы подписываетесь на хостинг, у компании обычно есть страница, где они точно сообщают вам, что поддерживается на их серверах (как правило: php, mysql), и сколько пространства и пропускной способности вам разрешено. Таким образом, если они не перечисляют его на своем сайте, весьма вероятно, что они его не поддержат.
Чтобы обойти это, вы можете вместо этого купить VPS (Virtual Private Server), а затем настроить его, как хотите.
Какой «сервер» вы говорите? Веб-сервер - довольно конкретная часть программного обеспечения. Например, сервер Apache httpd. О каком «сервере» вы спрашиваете? –
Как я уже говорил, я использую сервер Mac OS X 10.5. По умолчанию используется Apache (я считаю). – Jeff
Mac OS X может использовать Apache. Не в этом дело. Вы ** думаете, что используете Apache? Вы должны выбрать сервер. Какой сервер вы собираетесь использовать? –