nginx location 目录并加密访问 gzip压缩

先上一个完整的location:

location /test/ 
{ 
alias /home/sftp/img/; 
autoindex on;
auth_basic "Please input password";
auth_basic_user_file /etc/nginx/passwd;
autoindex on; #开启目录浏览
autoindex_format html; #以html风格将目录展示在浏览器中
autoindex_exact_size off; 
#切换为 off 后,以可读的方式显示文件大小,单位为 KB、MB 或者 GB
autoindex_localtime on; #以服务器的文件时间作为显示的时间
charset utf-8,gbk; #展示中文文件名
}

++++++++++补充说明++++++++++

注意结尾后面的 /

设置密码

htpasswd 命令

htpasswd命令选项参数说明:

-c 创建一个加密文件

-n 不更新加密文件,只将htpasswd命令加密后的用户名密码显示在屏幕上 

-m 默认htpassswd命令采用MD5算法对密码进行加密

-d htpassswd命令采用CRYPT算法对密码进行加密

-p htpassswd命令不对密码进行进行加密,即明文密码

-s htpassswd命令采用SHA算法对密码进行加密

-b htpassswd命令行中一并输入用户名和密码而不是根据提示输入密码

-D 删除指定的用户

htpasswd例子

1. 如何利用htpasswd命令添加用户?

htpasswd -bc ./.passwd sandu pass
在当前目录下生成一个.passwd文件,用户名sandu,密码:pass,默认采用MD5加密方式
2. 如何在原有密码文件中增加下一个用户?
htpasswd -b ./.passwd sandu1 pass
去掉c选项,即可在第一个用户之后添加第二个用户,依此类推
3. 如何不更新密码文件,只显示加密后的用户名和密码?
htpasswd -nb sandu pass
不更新.passwd文件,只在屏幕上输出用户名和经过加密后的密码
4. 如何利用htpasswd命令删除用户名和密码?
htpasswd -D .passwd sandu
5. 如何利用 htpasswd 命令修改密码?
htpasswd -D .passwd sandu
htpasswd -b .passwd sandu pass

gzip压缩

gzip on;
gzip_min_length 1k;
gzip_buffers 4 128k;
#gzip_http_version 1.0;
gzip_comp_level 9;
gzip_types text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
gzip_vary off;
gzip_disable "MSIE [1-6]\.";

gzip使用环境:http,server,location,if(x),一般把它定义在nginx.conf的http{…..}之间

  • gzip on
    on为启用,off为关闭
  • gzip_min_length 1k
    设置允许压缩的页面最小字节数,页面字节数从header头中的Content-Length中进行获取。默认值是0,不管页面多大都压缩。建议设置成大于1k的字节数,小于1k可能会越压越大。
  • gzip_buffers 4 16k
    获取多少内存用于缓存压缩结果,‘4 16k’表示以16k*4为单位获得
  • gzip_comp_level 5
    gzip压缩比(1~9),越小压缩效果越差,但是越大处理越慢,所以一般取中间值;
  • gzip_types text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php
    对特定的MIME类型生效,其中'text/html’被系统强制启用
  • gzip_http_version 1.1
    识别http协议的版本,早起浏览器可能不支持gzip自解压,用户会看到乱码
  • gzip_vary on
    启用应答头"Vary: Accept-Encoding"
  • gzip_proxied off
    nginx做为反向代理时启用,off(关闭所有代理结果的数据的压缩),expired(启用压缩,如果header头中包括"Expires"头信息),no-cache(启用压缩,header头中包含"Cache-Control:no-cache"),no-store(启用压缩,header头中包含"Cache-Control:no-store"),private(启用压缩,header头中包含"Cache-Control:private"),no_last_modefied(启用压缩,header头中不包含"Last-Modified"),no_etag(启用压缩,如果header头中不包含"Etag"头信息),auth(启用压缩,如果header头中包含"Authorization"头信息)
  • gzip_disable msie6
    (IE5.5和IE6 SP1使用msie6参数来禁止gzip压缩 )指定哪些不需要gzip压缩的浏览器(将和User-Agents进行匹配),依赖于PCRE库
发布了13 篇原创文章 · 获赞 6 · 访问量 731

猜你喜欢

转载自blog.csdn.net/jiakai82/article/details/103598220