繁体   English   中英

在Django开发服务器上通过Apache服务媒体文件?

[英]Serve Media Files Via Apache on a Django Development Server?

由于某些原因,除了我尝试访问Django应用程序中的media文件(用户上传的文件)时不断出现的“愚蠢”错误外,我无法弄清楚为什么我不能管理media文件!

在这种情况下,例如,我想要做的就是能够将上传的图像显示在最前面。 我的up通过/static/正确地提供了静态文件,但是当我尝试为/site_media/提供服务时,地狱就/site_media/松散了! 我可能做错了什么?

因此,在意识到Django实际上并没有真正处理媒体文件的能力之后,我决定通过建议的mod_python选项使用Apache,就像在生产中建议的那样。 但是我以前从未做过,并且想知道在开发服务器上这样做是否值得。

好吧,我知道最终我在生产时必须走这条路,所以仍然必须学习如何做到这一点,但是在开发服务器上使用此路由的利弊是什么?

由于django无需处理媒体即可更快地处理请求,因此肯定是一个专业人士。

缺点是,如果并且在编辑媒体时,还需要重新启动apache,以刷新媒体。

根据您的评论进行更新:

当然,您可以轻松地做到这一点。 我练习此问题的一种简单方法是,使用nginx并将媒体文件夹符号链接到已启用nginx站点并在端口80(或任何其他端口)上运行nginx。

您可以在设置中设置MEDIA_URL,将其指向具有适当端口的URL。

首先, 建议使用mod_python。 实际上,特别推荐反对 请改用mod_wsgi。

其次,由于您未提供任何代码或安装细节,因此我们无法通过开发服务器告诉静态媒体时您在做什么错。

最后,没有理由没有理由不能使用Apache-甚至更好的是使用轻量级服务器(例如nginx)并将其仅指向静态目录。 然后,将STATIC_URL中的STATIC_URL设置为该服务器提供的地址。 在开发过程中,端口是什么都没有关系。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM