Как создать простой веб-сайт с Python?
Я имею в виду действительно простой, f.ex, Вы видите текст "Привет Мир", и существует кнопка, "отправляют", который (onClick) покажет, что ajax поле "отправляет успешный".
Я хочу запуститься, разрабатывают некоторый материал с Python, и я не знаю, где запустить.
Почему бы вам не попробовать Google AppEngine? Они предоставляют вам локальную среду (которая работает в вашей локальной системе) для разработки приложения. У них есть хороший и простой вводный материал для запуска и запуска сайта - ваш пример "привет, мир" будет тривиальным для реализации.
С этого момента вы можете либо перейти на какой-нибудь другой фреймворк (используя то, что вы узнали, поскольку ванильный материал AppEngine довольно стандартен для простых веб-фреймворков Python), либо продолжить работу с другими вещами, которые Google предоставляет (например, размещение вашего приложения для вас ...)
Вы можете написать веб-сайт на Python, на котором веб-сервер реализован на Python или в котором Python вызывается с какого-либо другого веб-сервера. Если у вас еще не настроен веб-сервер, первый вариант проще. Библиотека Python включает в себя полнофункциональный веб-сервер, все, что вам нужно, это добавить пару методов для ответа на запросы.
Полный пример веб-сайта, использующего эту простую технику, см. В Создание простого веб-сервера на Python
Этот метод может хорошо или не может служить вам хорошо для разработки коммерческих, производственных веб-сайтов, но это Простейший способ от P (ython) до W (сайт).
Как предложил Феликс , определенно используйте WSGI ( mod_wsgi ) в качестве интерфейса шлюза. Это современный способ ведения бизнеса, и другой его главный конкурент, mod_python , больше не поддерживается.
Django - отличный выбор, если вам нужен полноценный фреймворк производственного качества, но он также требует больших накладных расходов и довольно крутой кривой обучения.
Мое предложение: Торнадо !
Я обнаружил, что Tornado позволяет очень легко начать работу и быстро начать работу. Чтобы проиллюстрировать это, "Hello, World" из документации Tornado:
import tornado.httpserver
import tornado.ioloop
import tornado.web
class MainHandler(tornado.web.RequestHandler):
def get(self):
self.write("Hello, world")
application = tornado.web.Application([
(r"/", MainHandler),
])
if __name__ == "__main__":
http_server = tornado.httpserver.HTTPServer(application)
http_server.listen(8888)
tornado.ioloop.IOLoop.instance().start()
На мой взгляд, это говорит само за себя.
Изменить: Важно отметить, что у вас нет для использования веб-сервера, поставляемого с Tornado. Он очень легко подключается к WSGI для работы с любым сервером, который у вас уже есть.
Удачи в поисках!
Я думаю, вам следует начать с какой-то веб-инфраструктуры Python. Для меня Web2Py одновременно прост и эффективен. Конечно, вы можете создавать свои страницы с помощью CGI: фреймворк не требуется, но для более сложных сайтов это непрактично.
Я надеялся, что более подробные ответы будут ответить на этот вопрос, так как это деликатная тема. Веб-разработка на Python разделена на множество фреймворков, у каждой из которых есть свои взлеты и падения, и каждый разработчик использует свой. Это весьма прискорбно. Что вам следует знать:
В заключение, используйте то, что вам ближе всего.