Хотя вы могли бы запускать веб-фреймворк Python поверх CGI, я не думаю, что вы хотите : веб-фреймворк предоставляет вам множество дополнительных функций для кодирование проще, но часть цены, которую вы платите за это, состоит в том, что инфраструктура имеет много дополнительного кода для обеспечения этой функциональности - этот код должен быть загружен, и его части инициализации выполняются каждый раз, когда начинается процесс веб-приложения.
CGI запускает новый процесс для вашего кода каждый раз, когда соответствующий URL-адрес посещается, и этот процесс завершается, когда он завершается, отвечая на это одно посещение. Итак, вы действительно хотите выполнить как можно меньше работы по инициализации, чтобы избежать очень медленного ответа на пользовательские запросы.
Итак, если все, что ваш хостинг-провайдер разрешает вам, это CGI, вы, вероятно, захотите запрограммировать «вплоть до простого интерфейса CGI», чтобы минимизировать накладные расходы при запуске / завершении работы.
Хороший обзор проблем и возможностей можно найти в howto Marek Kubica "HOWTO Использование Python в Интернете". WSGI (помимо прочего, он может взаимодействовать с базовым веб-сервером) может работать поверх CGI, поэтому теоретически вы можете использовать любую веб-среду Python, поддерживающую WSGI (что означает почти все современные) - суть в том, что, если вы не занимаетесь чем-то большим, чем просто изучаете и «играете вокруг», вы не хотите хотеть нести этот стартап снова и снова на страницах ты на самом деле служишь. (Если вы просто учитесь и играете, вы можете запустить веб-сервер на своей собственной машине для своего эксклюзивного использования, поэтому ограничения вашего хостинг-провайдера не имеют значения; -).
Если вы решили программировать на уровне «голого CGI», вы можете начать с этой страницы - убедитесь, что вы переходите по различным ссылкам с него на полезные учебные пособия и на полезную и полезную коллекцию в vidspace. интересные примеры скриптов Python CGI.
Для обзора некоторых из многих доступных фреймворков Python для веб-приложений вы можете запустить здесь
где для каждой рассматриваемой структуры вы найдете некоторую информацию и ссылки.
И последнее, но не менее важное: вы не должны игнорировать возможность разработки веб-приложений на Google App Engine - хотя и со своими собственными особенностями и ограничениями, он предлагает среду, совместимую с WSGI и свободную от заряд для даже довольно интенсивного использования. Существуют интересные легковесные фреймворки, специально разработанные для использования преимуществ App Engine, такие как превосходная tipfy (эта страница из вики tipfy также ссылается на другие), но, в частности, вы можете запустить там популярный фреймворк django ( с особенностями и ограничениями, как я уже сказал - в частности, без реляционной базы данных - но это все еще самый популярный выбор несмотря на это).
В первые дни существования App Engine некоторые люди беспокоились о том, что его использование может привести к «блокировке» - поскольку оно отличается от других сред хостинга, не будет ли веб-приложение, разработанное для него, переносить в другое место, если и когда кто-то захочет к? К счастью, программное обеспечение с открытым исходным кодом, такое как appscale и typhoonae , развеяло все подобные проблемы.