Как установить приложение WSGI на Python

Последнее изменение: Tuesday November 21st, 2023

Python WSGI – это стандартизированный веб-интерфейс для запуска приложений на Python.

!!!: cPanel не разрабатывает или не поставляет веб-приложения Python WSGI, техническая поддержка cPanel не может вам помочь в этом и не несет ответственности за потерю данных.
Примечание: Мы рекомендуем вам выполнить указанные шаги в этом документе через командную строку в качестве пользователя cPanel, если в инструкции не указано иное. Где pythonapp – это имя вашего приложения.

Если вам нужна дополнительная информация, прочтите документацию Python WSGI.

Установка приложения Python

Настройки перед установкой

Прежде чем начать, убедитесь, что ваш провайдер хостинга установил следующие пакеты EasyApache 4 на ваш сервер:

  • mod-passenger
    Этот модуль отключает модуль mod_userdir Apache.
  • mod-env
    Также мы рекомендуем вашему провайдеру хостинга установить модуль ea-ruby27-ruby-devel

Также ваш провайдер хостинга должен установить следующие пакеты:

  • python-flask (или другой фреймворк)
    Мы настоятельно рекомендуем использовать фреймворк с Python WSGI.
  • pip
    Имя пакета зависит от вашей версии Python.

Установка приложения

Пожалуйста, следуйте этим шагам для установки приложения:

  1. Войдите на сервер через SSH как пользователь cPanel.
  2. Создайте директорию приложения относительно вашей домашней директории. Выполните следующую команду, где directoryname – это директория приложения:
    mkdir directoryname
  3. Перейдите в директорию приложения. Выполните следующую команду, где directoryname – это директория приложения:
    cd directoryname
  4. Скопируйте это приложение на ваш сервер.
  5. Создайте файл passenger_wsgi.py. Где pythonapp – это ваше приложение Python, а MyApp – это функция приложения:
    echo "from pythonapp import MyApp as application" > passenger_wsgi.py
  6. Установите зависимости приложения. Создайте файл requirements.txt, затем выполните следующую команду:
    pip install –user -r requirements.txt
    Примечание: Любые зависимости также можно установить в разделе Ensure Dependencies интерфейса Менеджер приложений cPanel (cPanel » Home » Software » Application Manager).
    Предупреждение:
    • Требования к версии вашей зависимости должны соответствовать вашей версии Python. Например, зависимость, требующая Python 2 или более раннюю

      версию, не будет работать в приложении, запущенном с Python 3.

    • Некоторые зависимости изменят требования для работы вашего приложения. Например, зависимость Flask render_template требует, чтобы ваш файл index.html находился в папке templates (подробнее).

Проверьте приложение

После установки приложения убедитесь, что оно активно.

  1. Запустите эту команду:
    python pythonapp.py

    Вывод может быть похож на следующий пример:

    Как установить приложение WSGI на Python python application output
  2. Откройте еще одно окно терминала и войдите на сервер через SSH от того же пользователя cPanel.
  3. Запустите эту команду:
    curl http://localhost:5000 

    Вывод будет похож на следующий пример:

    Hello, World!

Зарегистрируйте приложение

Зарегистрируйте приложение после его установки. Для этого используйте интерфейс Менеджера приложений cPanel (cPanel » Home » Software » Application Manager).

Затем вы сможете получить доступ к приложению в веб-браузере по следующему URL-адресу:

http://example.com/pythonapp

Перезапустите приложение

Чтобы перезапустить приложение после внесения изменений, создайте файл restart.txt touch. Создайте этот файл в директории /tmp приложения. Этот файл указывает Phusion Passenger® перезапустить приложение после внесения изменений. Это применит ваши изменения к приложению.

Важно:  Phusion Passenger перезапустит приложение только в том случае, если вы коснетесь файла restart.txt.
Was this article helpful?
Просмотры: 1884

10 лет с BeeHosting!
Отмечаем скидками до 70% на все услуги
+ бесплатная миграция сайта.

Facebook Instagram linkedin

Beehosting.pro website uses cookies

We use cookies to personalise content and ads, to provide social media features and to analyse our traffic. We also share information about your use of our site with our social media, advertising and analytics partners who may combine it with other information that you’ve provided to them or that they’ve collected from your use of their services.

Меню