Форум сайта python.su
0
Здравствуйте.
Помогите, пожалуйста, разобраться в работе Питона через WSGI.
Питон подключен через FastCGI и вроде даже работает, но не совсем так как надо, при запросе любого файла с расширением “.py” отрабатывает программа “application.py”.
Хочется чтобы при запросе “site.ru/script.py” выполнялся файл “script.py”, а при “site.ru/info.py” файл “info.py”.
Текущая конфигурация:
web.config:
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <handlers> <add name="Python" path="*.py" verb="*" modules="FastCgiModule" scriptProcessor="C:\Program Files\Python35\python.exe|"C:\Program Files\Python35\Lib\site-packages\wfastcgi.py"" resourceType="File" requireAccess="Script" /> </handlers> </system.webServer> <appSettings> <add key="WSGI_HANDLER" value="application.wsgi()" /> <add key="PYTHONPATH" value="C:\inetpub\wwwroot" /> </appSettings> </configuration>
class wsgi: def __call__(self, environ, start_response): start_response('200 OK', [('Content-Type', 'text/html')]) return [bytes("<h1>Hello world!</h1> ", "UTF-8")]
Офлайн
0
Подскажите, пожалуйста, внятную инструкцию по установке Python на IIS. Возможно я что-то не правильно сделал.
Офлайн
0
Почему этот код работает:
class wsgi: def __call__(self, environ, start_response): start_response('200 OK', [('Content-Type', 'text/html')]) return [bytes("<h1 style='color:blue'>Hello world!</h1> ", "UTF-8")]
def wsgi(environ, start_response): start_response('200 OK', [('Content-Type', 'text/html')]) return [bytes("<h1 style='color:blue'>Hello world!</h1> ", "UTF-8")]
Офлайн
0
И вот так работает:
def wsgicb(environ, start_response): start_response('200 OK', [('Content-Type', 'text/html')]) return [bytes("<h1 style='color:blue'>Hello world!</h1> It's me!", "UTF-8")] def wsgi(): return wsgicb
Офлайн
0
Всё решилось удалением скобочек из параметра "WSGI_HANDLER"
<add key="WSGI_HANDLER" value="application.wsgi" />
Офлайн