我正在开发一个python webserver(Tornado)。我计划将它放在前面有nginx的生产实例中。这将是我第一次将内容放入生产环境中。我的问题是如何为静态服务设置文件/目录。例如我的应用程序,允许用户将照片上传到网络。我在Tornado收到请求,然后保存到磁盘。但是,当用户访问他们的项目页面时,我宁愿从静态服务器中提取图像。我的问题是从动态服务器获取图像到静态服务器的最佳实践是什么?我是否将映像目录rsync到静态服务器,然后运行从动态服务器删除映像的cron?
答案 0 :(得分:0)
最佳做法是使用共享存储,但如果不能使用它,则可以使用nginx中的“proxy_store”选项。 nginx doc中的示例:
location /images/ {
root /data/www;
error_page 404 = @fetch;
}
location @fetch {
internal;
proxy_pass http://backend;
proxy_store on;
proxy_store_access user:rw group:rw all:r;
proxy_temp_path /data/temp;
root /data/www;
}