nginx中每一个host都会被包含在一个server{}中,在编写nginx规则时,它支持一些基本的正则。
ex: server_name *.abc.com abc.com
在配置服务器的时候,常用的有:
1、负载均衡;
2、正向、反向代理;
3、跳转、反盗链;
4、请求、文件缓存;
5、别名映射、URL跳转。
一、反向代理的应用
以一具体应用为例:假设网站上要增设一个音乐搜索功能。
最快最简单的方式是使用soso或是百度的音乐搜索,获取音乐的真实地址,自己写一个swf版本的音乐播放器,然后就能实现音乐搜索、试听和保存音乐列表的功能了。实际上百度和soso对外站抓取其音乐网址都做了处理,不是那么轻易就可以获得音乐的真实地址。
有兴趣可以参考这篇文章:《使用nginx反向代理获取百度MP3的真实网址》
其中它最重要的配置是这一段,首先是解决crossdomain.xml获取的问题,然后是“欺骗”百度服务器,让百度的音乐服务器响应请求并返回结果。
1: location /crossdomain.xml {
2: alias C:/9917/9917_Web/themes/swf/crossdomain.xml;
3: }
4: location ~ ^/m$ {
'220.181.38.82';
'';
'no-store, no-cache, must-revalidate, post-check=0, pre-check=0';
8: add_header Pragma no-cache;
9: proxy_pass http://220.181.38.82;
10: }