Web框架与Web服务器有什么区别?

7

FlaskDjangoNodeJSApache这样的技术有哪些区别?通过ApacheNodeJS,它们可以作为Web服务器,将服务器端代码与HTTP请求进行接口交互。那么FlaskDjango是否也提供这种功能,还是提供不同的功能?


是的,它们都是服务器端Web框架。Django可以与Apache和其他Web服务器一起使用。我不确定Flask。 - joel goldstick
1个回答

10

Apache/nginx是Web服务器,它们可以提供静态内容(例如html、jpg等)和由Web应用程序生成的动态内容。

Django/Flask和NodeJS上的Express是Web框架,它们提供编写Web应用程序的常见功能,如请求路由/ORM/会话/模板。它简化了编写Web应用程序的过程 - 您只需要“填写空白处”。

大多数情况下,Web应用程序(在Web框架中实现)位于Web服务器后面,并处理由Web服务器交付的请求。但有时,框架本身可以充当Web服务器,例如Tornado / Express。

NodeJS既不是Web框架也不是Web服务器。您可以将其视为JavaScript跨平台运行时环境。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接