这两天抽空玩了一下Django,源码是无脑搬运GitHub上的。
玩到图片上传和显示这块时,发现无论在Django上怎么配置setting,都没办法将静态的图片展示出来。(虽然就这么一句话,处理这个问题期间翻阅了网上几乎所有此类问题的解决办法,最后都无济于事)
最后索性放弃了用Django处理静态文件的方案,于是就把urls里关于静态文件夹media的映射全部删除。再说,静态文件处理也不是Django的强项,何必吊死在这颗小树上。
是时候让强悍的Nginx上马了。不就是让Nginx去处理静态文件的访问嘛,配置一下代理规则,分分钟解决Django静态图片不显示的问题。
假设,通过类似以上的配置(切记不能照搬,每台服务器不一样,你懂的),遇到Nginx出现403 forbidden的提示信息,那么打开nginx.conf文件。
将nginx.config的user改为和启动用户一致,比如,我改成了root。
命令:vim conf/nginx.conf
然后 nginx -s reload 重载一下。
一般到此问题就解决了。