Nginx主要应用:
静态web服务器
负载均衡
静态代理
虚拟主机
静态代理
:把所有静态资源的访问改为访问nginx,而不是访问tomcat,因为nginx更擅长于静态资源的处理,性能更好,效率更高;
所以在实际应用中,我们将静态资源比如图片、css、html、js等交给nginx处理,而不是由tomcat处理;
Nginx静态代理如何实现?(通过在Nginx的nginx.conf文件进行配置即可实现)
方式一:
通过在nginx.conf配置文件中添加静态资源的location,比如:
#当访问静态资源,则从linux服务器/opt/static目录下获取(举例)
location ~ .*\.(js|css|htm|html|gif|jpg|jpeg|png|bmp|swf|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|mp3|wma)$ {
root /opt/static;
}
其中:
~ 表示正则匹配,也就是说后面的内容可以是正则表达式匹配;
第一个点 . 表示任意字符;
* 表示一个或多个字符;
\. 是转移字符,是后面这个点的转移字符;
| 表示或者
$ 表示结尾
整个配置表示以 .后面括号里面的这些后缀结尾的文件都由nginx处理;
放置静态资源的目录,要注意一下目录权限问题,如果权限不足,给目录赋予权限;
方式二:
通过在nginx.conf配置文件中配置静态资源所在目录实现,比如:
location ~ .*/(css|js|img|images|image) {
root /opt/static;
}
我们将静态资源放入 /opt/static 目录下,然后用户访问时由nginx返回这些静态资源;
动静分离:
Nginx的负载均衡 和 静态代理 结合在一起,我们可以实现动静分离。
动静分离示例
负载均衡Nginx配置:
upstream www.p2p.com {
server 127.0.0.1:9100 weight=5;
server 127.0.0.1:9200 weight=2;
}
upstream static.p2p.com {
server 127.0.0.1:81 weight=1;
server 127.0.0.1:82 weight=1;
}
location /p2p {
proxy_pass http://www.p2p.com;
}
location ~ .*/(css|js|img|images) {
proxy_pass http://static.p2p.com;
}
静态代理Nginx配置:
location ~ .*/(css|js|img|images) {
root /opt/static;
}
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:nginx的应用【静态代理、动静分离】 - Python技术站