nginx的一些小运用

nginx的一些运用

 (2017-08-04 11:48:49)[编辑][删除]
   
以=开头表示精确匹配
^~ 开头表示uri以某个常规字符串开头,不是正则匹配
~ 开头表示区分大小写的正则匹配;
~* 开头表示不区分大小写的正则匹配
/ 通用匹配, 如果没有其它匹配,任何请求都会匹配到
 
优先级:
(location =) > (location 完整路径) > (location ^~ 路径) > (location ~,~* 正则顺序) > (location 部分起始路径) > (/)
 
重定向:
location = /302domain.html {
rewrite ^/(.*)$ http://linux.51yip.com/ redirect;
}
location = /302ip.html {
rewrite ^/(.*)$ http://202.106.46.151/ redirect;
}
 
访问资源是,参数值变化,默认情况下,是会忽略参数,如果要不忽略参数,可以用重定向来做,如下:
location ~ .*/test.mp4 {
if ($args ~* "name=\d+$") {
rewrite (.*).mp4 $1_$arg_name.mp4? redirect;
}
重新加载nginx后,访问test.mp4?name=1就会重定向到test_1.mp4,访问test.mp4?name=2就会重定向到test_2.mp4,以此类推。
 
修改/添加响应头:
修改/添加响应头很简单add_header 'aaa' 'aaa';就可以添加一个aaa: aaa的响应头
 
取消缓存:
修改响应头Cache-Control,如下:
location ~ .*/.(css|js)$ {
add_header Cache-Control 'no-store';
}
Cache-Control:
no-cache指示请求或响应消息不能缓存
no-store用于防止重要的信息被无意的发布。在请求消息中发送将使得请求和响应消息都不使用缓存。
max-age指示客户机可以接收生存期不大于指定时间(以秒为单位)的响应。
min-fresh指示客户机可以接收响应时间小于当前时间加上指定时间的响应。
max-stale指示客户机可以接收超出超时期间的响应消息。如果指定max-stale消息的值,那么客户机可以接收超出超时期指定值之内的响应消息。
 
动态安装nginx模块:
/usr/local/nginx/sbin/nginx -V查看安装了哪些模块
在源码包中使用./configure 后面跟nginx的地址,原模块,要加的模块,在使用make命令即可,注意:不能用make install,要不能就是覆盖而不是动态安装了
posted @ 2017-08-04 16:18  杰0001  阅读(103)  评论(0)    收藏  举报