nginx作图片服务器的访问权限控制
2010-05-30 14:30
531 查看
1、针对单一图片的控制
如果图片按照哈希结构放置,那么用户的图片加锁后要把每一张图片都加上控制文件,如果该用户图片较多,写入时稍嫌多些。
比如有一张图:
/data/image/a/z/asdfqerqwegasd.jpg
写上一个空文件:
/data/image/a/z/asdfqerqwegasd.jpg.lock
然后在nginx配置判断:
location / {
root /data/image/;
if ( -f “${request_filename}.lock” )
{
#rewrite ^(.*)$ http://www.sudone.com/access.jsp?url=$1 last;
return 403;#test
}
}
这样,只要在图片旁边有一个.lock文件,就会访问到403 Forbidden;使用rewrite会将图片链接和cookie定位到后端,由后端返回判定结果X-Accel-Redirect头或者重定向到另外一个jsp去填密码。
2、针对目录的控制
如果图片是按照目录放置,那么配置会稍微复杂一些。
location / {
root /data/image/;
if ( $request_filename ~ ^(.*)/[^/]*$ ){
set $dir $1;
}
if ( -f “${dir}/lock” )
{
#rewrite ^(.*)$ http://www.sudone.com/access.jsp?url=$1 last;
return 403;#test
}
}
首先用正则表达式取出图片路径的目录,然后带上控制文件名判断此文件是否存在,这样只要在图片的目录中放置一个名叫lock的空文件就能控制完整个目录:
/data/image/a/z/lock
测试一下,效果不错,只要控制文件存在,访问立刻403;删去控制文件,访问正常。
本文章转自:http://vps.ebandao.cn/Nginx/fangwenkongzhi/0315/12632/
分享技术快乐自我
如果图片按照哈希结构放置,那么用户的图片加锁后要把每一张图片都加上控制文件,如果该用户图片较多,写入时稍嫌多些。
比如有一张图:
/data/image/a/z/asdfqerqwegasd.jpg
写上一个空文件:
/data/image/a/z/asdfqerqwegasd.jpg.lock
然后在nginx配置判断:
location / {
root /data/image/;
if ( -f “${request_filename}.lock” )
{
#rewrite ^(.*)$ http://www.sudone.com/access.jsp?url=$1 last;
return 403;#test
}
}
这样,只要在图片旁边有一个.lock文件,就会访问到403 Forbidden;使用rewrite会将图片链接和cookie定位到后端,由后端返回判定结果X-Accel-Redirect头或者重定向到另外一个jsp去填密码。
2、针对目录的控制
如果图片是按照目录放置,那么配置会稍微复杂一些。
location / {
root /data/image/;
if ( $request_filename ~ ^(.*)/[^/]*$ ){
set $dir $1;
}
if ( -f “${dir}/lock” )
{
#rewrite ^(.*)$ http://www.sudone.com/access.jsp?url=$1 last;
return 403;#test
}
}
首先用正则表达式取出图片路径的目录,然后带上控制文件名判断此文件是否存在,这样只要在图片的目录中放置一个名叫lock的空文件就能控制完整个目录:
/data/image/a/z/lock
测试一下,效果不错,只要控制文件存在,访问立刻403;删去控制文件,访问正常。
本文章转自:http://vps.ebandao.cn/Nginx/fangwenkongzhi/0315/12632/
分享技术快乐自我
相关文章推荐
- 使用nginx作图片服务器的访问权限控制
- 使用nginx作图片服务器的访问权限控制
- nginx用cookie控制访问权限实现方法
- 如何用Nginx访问图片服务器的图片
- 使用 Nginx 的 X-Sendfile 机制控制文件访问权限(php版)
- centos7 nginx图片 服务器可以访问ftp用户上传的图片资源的配置
- Nginx访问控制_登陆权限的控制(http_auth_basic_module)
- 解决无法使用http访问安装好nginx和ftp的图片服务器的问题
- nginx防盗链、访问控制、PHP解析、服务器代理
- Nginx列出目录和文件并用密码控制访问权限配置方法
- CentOS6.5 Nginx搭建web服务器,实现平滑升级,虚拟主机及访问控制
- 使用nginx和iptables做访问权限控制(IP和MAC)
- 网络管理员:注重服务器访问权限控制策略
- nginx用cookie控制访问权限实现方法
- Ubuntu系统下nginx和ftp搭建图片服务器,处理外网访问不到文件问题
- 您未被授权查看该页 您不具备查看该目录或页面的权限,因为访问控制列表 (ACL) 对 Web 服务器上的该资源进行了配置
- 用Lua控制Nginx静态文件的url访问权限
- nginx服务器配置ftp服务器图片访问根目录
- nginx动态访问静态资源,图片服务器配置2中方式,tomcat访问图片