nginx相关指令及使用(三)

来源:互联网 发布:js 开发自定义组件 编辑:程序博客网 时间:2024/04/29 20:08

http auth basic模块:

采用基于http基本身份验证的用户名和密码登录方式,来保护虚拟主机或者目录

location / {

 auth_basic "Restricted"; // [text|off]默认off,可用于http server location limit_except

 //用于弹出输入用户名和密码的提示框,eg 设置为nj会提示:位于nj的服务器nj.cc要求输入name和pass

 auth_basic_user_file htppasswd;//file用于设置密码文件的名称0.6.7之前为相对nginx.conf的路径,之后为nginx的安装路径conf文件夹下

}

htppasswd文件的格式如下:user1:pass1

                        user2:pass2:comment

                        user3:pass3


http的autoindex模块:提供显示目录列表的功能

autoindex [on|off] 默认off 设置是否允许显示目录列表

autoindex_exact_size [on|off] 默认on,显示文件的确切大小,off会显示大概的值,可能是KB MB GB

autoindex_localtime [on|off] 默认off,on会用本地时间显示文件修改时间 off会用格林尼治时间GMT显示


http的Brower模块:

该模块可以根据客户端的user-agent请求头中的信息创建变量

$modern_brower 若被识别为新浏览器,=modern_brower_value设置的值

$ancient_brower 若被识别为旧浏览器,=ancient_brower_value设置的值

$msie 若是msie浏览器,它的值为1

1)可以根据不同的浏览器类型来架子啊不同的首页文件

eg: modern_brower_value "moder." ;

    modern_brower  msie 5.5 ;

    modern_brower opera 9.0 ;

    modern_brower safari  413 ;

    index index.$(modern_brower)html index.html ;

2) 也可以重定向旧的浏览器

   modern_brower opera 9.0 ; 

   ancient_brower Links Lynx ; 

   if($ancient_brower)  {

    rewrite ^ /ancient.html

  }

http fastcgi模块:通过传递参数来控制fastcgi进程工作

eg: location / {

    fastcgi_pass locahost:9000; //用于指定fastcgi服务器监听的端口或者unix套接字

    #fastcgi_pass unix:/tmp/fastcgi.socket 若有多台fastcgi服务器,也可以用upstream指定 upstream a{server ...}; fastcgi_pass a;

    fastcgi_index index.php;   

    fastcgi_param  SCRIPT_NAME        $fastcgi_script_name; //php用来确定要执行的脚本name

    fastcgi_param  QUERY_STRING       $query_string; // 它的一个子参数  

    fastcgi_param  REQUEST_METHOD     $request_method;

    fastcgi_param  CONTENT_TYPE       $content_type;

    fastcgi_param  CONTENT_LENGTH     $content_length; 

 }

fastcgi_buffer_size 设置fastcgi服务器响应头部的缓冲区大小

fastcgi_cache 设置缓存在共享内存中的名称

fastcgi_cache_key 设置被缓存的key

fastcgi_cache_method 设置哪些请求可以被缓存get | post | head

fastcgi_index file 若请求的fastcgi uri以 / 结尾,该指令设置的文件会被附加到uri后边保存到变量$fastcgi_script_name中

fastcgi_hide_header name默认nginx不会把fastcgi进程返回的status X-Aceel .. 等header返回给client,若需要,则要强制发送

fastcgi_ignore_client_abort off|on默认off,若client终端对server的请求,该指令决定是否中断对fastcgi的请求是否中断

fastcgi_spilt_path_info 将url分割成文件名+参数 $fastcgi_path_info的值就是name后边的



0 0