Перейти к содержанию

Настройка Python Webhook Server на Windows#

На сервере должен быть установлен Python.

Для использования IIS (Internet Information Services) в качетсве веб-сервере требуется настроить конфигурационный файл web.config, чтобы служба IIS могла правильно выполнять код Python. Этот файл располагается в папке публикации вашего веб-сервера.

После установки интерпретатора следует указать обработчик HttpPlatform в файле web.config. Этот обработчик будет передавать подключения в автономный процесс Python.

Пример конфигурационного файла:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <handlers>
      <add name="PythonHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified"/>
    </handlers>
    <httpPlatform processPath="<Path-to-python>\python.exe"
                  arguments="<Path-to-server-file>\echo.py
                  stdoutLogEnabled="true"
                  stdoutLogFile="<Path-to-log-file>\python.log"
                  startupTimeLimit="60"
                  processesPerApplication="16">
      <environmentVariables>
        <environmentVariable name="SOME_VARIABLE" value="%SOME_VAR%" />
      </environmentVariables>
    </httpPlatform>
  </system.webServer>
</configuration>
  • \<Path-to-python> - путь к исполняемому файлу Python

  • \<Path-to-server-file> - путь к исполняемому файлу сервера (например receive_all_with_counter.py из примера к библиотеке)

  • \<Path-to-log-file> - путь к файлу логов

Также потребуется открыть соответствующий порт во внешнюю сеть, установив настройки брандмауэра (дополнительные параметры -> Правила для входящих подключений -> Создать правило -> Тип правила = Порт, Протоколы и порт -> TCP, указать порт, Действие -> Разрешить соединение).