你的位置:首页 > 网络运维

nginx rewrite实例

2年前 (2017-07-12) 浏览:(495) 网络运维 评论(0)

http {

    # 定义image日志格式

    log_format imagelog '[$time_local] ' $image_file ' ' $image_type ' ' $body_bytes_sent ' ' $status;

    # 开启重写日志

    rewrite_log on;

    server {

        root /home/www;

        location / {

                # 重写规则信息

                error_log logs/rewrite.log notice;

                # 注意这里要用‘’单引号引起来,避免{}

                rewrite '^/images/([a-z]{2})/([a-z0-9]{5})/(.*)\.(png|jpg|gif)$' /data?file=$3.$4;

                # 注意不能在上面这条规则后面加上“last”参数,否则下面的set指令不会执行

                set $image_file $3;

                set $image_type $4;

        }

        location /data {

                # 指定针对图片的日志格式,来分析图片类型和大小

                access_log logs/images.log mian;

                root /data/images;

                # 应用前面定义的变量。判断首先文件在不在,不在再判断目录在不在,如果还不在就跳转到最后一个url里

                try_files /$arg_file /image404.html;

        }

        location = /image404.html {

                # 图片不存在返回特定的信息

                return 404 "image not found\n";

        }

}

尊重共享,欢迎转载,请自觉添加本文链接,谢谢!本文链接:https://www.601849.com/post/288.html