我最近学习了Python,我不得不承认,它是一个非常棒的编程语言和它的伟大的图书馆,但使用它的Web开发似乎是一个很大的痛苦的屁股.就我所看到的,我必须使用CGI,mod_wsgi等来部署(http://docs.python.org/howto/webservers.html),重新启动服务器以查看更改(http:// stackoverflow.com/questions/581038/python-web-programming)
我的问题是,Python被广泛用于Web开发,为什么不像PHP那么简单?
即我会喜欢写index.py:
print """ <html> <head> <title>Hello world</title> </head> <body> Hello world </body> </html>"""
[If] Python being used so widely for web development,Why cant it be as simple as PHP? ie i would love to write index.py…
根据您的示例,Python可以像PHP一样简单.做上述工作的最简单的方法是使用CGI(并且调用你的文件index.cgi而不是index.py,那么你的脚本就可以正常工作,虽然你应该首先指定内容类型,如下所示:
print 'Content-type: text/html'
这在PHP中将适用于Python. Python’s CGI module将让你快速运行.
As far as what i read,I’ve to use CGI,mod_wsgi,etc. to deploy
通常您会选择一个或另一个,实际上您最有可能选择一种基于更现代的WSGI的框架,而不用担心低级别的东西.但是如果你不想,你不需要打扰这些低级接口.
Restart the server to see the changes
可能不会.必须重新启动服务器是框架和部署配置的限制,通常不是必需的.如果您使用mod_python这可能适用,但通常不适用(例如许多框架支持自动重新加载).
Python拥有丰富的网页开发资源.有裸机系统(例如CGI,mod_wsgi),轻量级系统(例如CherryPy)和整个框架(例如Zope).您可以选择最适合您需求的产品.
能够创建一个简单的文件并产生一些输出可能有助于快速进行某些操作,但它并不是一个丰富,成熟,有特色的框架的标志.当然,你可以直接开始显示东西,但是呢?突然间,您将需要导入或编写Web框架提供的所有相同功能.对于不平凡的网络应用,您需要非平凡的框架.
例如,像Django这样的东西将给你一个持久性框架,自动生成的管理界面,诱人的语言,URL调度系统等等.您可以专注于您的应用程序逻辑,而不用担心较低级别的详细信息. Django是一个很好的开始,因为它有很好的文档,教程将让你快速进行.