flask多静态文件夹处理问题

huimeimei 发布于 2013/09/07 15:09
阅读 2K+
收藏 0

我有个图片网站,与网站程序相关的静态文件都在 /static/ 文件夹下,而网站的图片我却想放在与 /static/ 同一层级的 /images/ 下面,文件的目录结构如下:

── main
    ├── errors
    │   ├── css
    │   └── images
    ├── forms
    ├── models
    ├── static
    ├── images
    │   ├── css
    │   ├── fonts
    │   ├── images
    ├── templates
    │   ├── admin
    │   ├── errors
    │   ├── frontend
    │   └── helper
    └── views
然后我在nginx下这样设置:

            location ~* /(static|images)/ {  
                include uwsgi_params;
                uwsgi_pass 127.0.0.1:5000; 
            } 
但发现直接访问 /images/20130825.jpg 会出错!然后我又试着把 images 放在 /views/images/static/,然后在flask注册模块的时候加了这个:app.register_module(down, url_prefix = '/images'),nginx的配置不变,但还是访问不了。

我这样做的目的是想让用户访问图片的时候,直接交给 nginx 去处理,不经过flask。如果加一个静态域名指向这个静态文件夹,这个www域名的权重又会下降。所以很烦恼。

加载中
0
西门飞
西门飞
location ~* /(static|images)/ {  
               这里面应该填写路径 而不是通过 uwsgi_pass
            } 
0
西门飞
西门飞

location ~ /statics/statics/(.*)/\.(gif|jpg|png|htm|html|css|js|flv|ico|swf){
    root D:/56dg/statics/$1/;
    expires 7d;            #设置浏览器过期时间
}

这个是我的nginx 静态资源的配置 你可以参考下

西门飞
西门飞
回复 @李少宏 : 回复 @李少宏 : 那就是uwsgi这方面出问题了,静态文件这样配置是对的 你再检查下其他配置把。。建议你把nginx的配置全部贴上来 让大家看看
huimeimei
huimeimei
参照了你这个,没有启动uwsgi,还是访问不了,它显示502
返回顶部
顶部