似乎大多数Web服务器(Apache,Nginx,Lighthttpd)与html文件(不同配置)分开提供静态文件。这是为什么?
我正在尝试使用Apache部署我的Django应用程序,到目前为止的部署非常简单。在开发过程中,Django服务器提供静态文件,而我没有打扰配置它。为什么它在真实的网络服务器中有所不同?
答案 0 :(得分:4)
这是一个性能问题。
在生产设置中,您不希望通过django提供静态内容。通过django提供静态内容涉及很多开销(加载静态文件,处理python字节码,传递WSGI等),这对静态内容来说是完全没有必要的。
Web服务器本身非常快速有效地提供静态内容,因此通常没有理由在请求中涉及django / python。
对于没有大量负载的小型网站,您可以让django提供静态内容(您需要配置django以使用DEBUG=False
提供静态内容)并且它会相对无害,但它不会#39;是正确的方式'这样做。