2014-09-29 78 views
1

似乎大多数网络服务器(Apache,Nginx,Lighthttpd)都提供与html文件(不同配置)分开的静态文件。为什么是这样?为什么静态文件在web服务器中单独提供?

我想用Apache部署我的Django应用程序,到目前为止部署已经很简单。在开发过程中,Django服务器提供了静态文件,而我并不打算对其进行配置。为什么它在真正的网络服务器中有所不同?

回答

4

这是一个性能问题。

在生产环境中,您不希望通过django提供静态内容。通过django提供静态内容涉及很多开销(加载静态文件,处理python字节码,通过WSGI等),这对静态内容完全不必要。

Web服务器在提供静态内容时非常快速有效,所以通常没有理由在请求中包含django/python。

对于没有大量负载的小型网站,您可以让django提供静态内容(您需要配置django以便为静态内容提供DEBUG=False),这将是相对无害的,但它不会是'正确的方式“来做到这一点。

相关问题