Запустить приложение на Python CGI на платформу Heroku
Я сделал простое приложение, которое использует скрипты Python CGI. У меня есть рабочая локальная версия (отлично работает с lighttpd), но теперь я хотел бы загрузить ее в Heroku. Приложение состоит из 2 или 3 скриптов, которые делают операции с файлом и печатают информацию обратно в браузер, поэтому я не думаю, что мне понадобится какой-либо модуль, кроме CGI.
но в Heroku документации только объясняет, как загружать приложения Python с причудливыми веб-фреймворками, и я не используя любой из них.
Я хочу знать, можно ли запускать скрипты CGI на Heroku, и если да, то как это сделать.
2 ответов
Heroku Cedar сосредоточен вокруг веб-приложений с автономным хостингом, поэтому вам нужно собрать приложение Вместе и запустить его как одну команду.
Я думаю, что самый простой способ-перенести ваше приложение в колбу. Это не очень сложно, особенно если это 2 или 3 скрипты.
другой вариант (в зависимости от ваших требований к производительности) будет использовать простой в CGI-сервера в стандартной библиотеке Python и Python buildpack. Я думаю, вам нужно будет свернуть свои сценарии в a ./ cgi-bin каталог и запустите сервер (в procfile) с помощью:
web: bin/python -m CGIHTTPServer $PORT
самым сложным способом было бы объединить lighttpd и ваши скрипты вместе и написать сценарий оболочки, чтобы запустить все это. Вы должны убедиться, что ваши скомпилированные двоичные файлы совместимы с Heroku. Я бы посмотрел на PHP buildpack в качестве отправной точки.
Я спросил с поддержкой Heroku о приложении cgi, которое я пытался обслуживать на платформе Heroku, и вот ответ:
Здравствуйте,
к сожалению, мы не поддерживаем приложения в стиле CGI, только чисто Python. Возможно, Вам еще повезет поиграть с модулем Python CGIHTTPServer, но если это не соответствует вашим потребностям, вам может не повезти.