Nginx
-
【Nginx基础】动静分离配置
1 动静分离简介对于一些应用来说(比如网站),图片,css文件,js文件等静态资源不需要动态语言的支持,可以直接返回给客户端使用,如果这些静态资源跟着动态资源一样的流程,那就太浪费服务器资源了;所以,最好的办法是让他们分家,静态资源直接从nginx服务器返回,动态资源经过nginx转发给相应的服务执行后再返回客户端;动静分离的好处是可以为用户提供更好的使用体验,而不是一直等着服务器一次性将资源返回。2 动静分离配置(1) nginx 配置server { listen 8827; server_name localhost; root /opt/app/php72; #动态请求转发到php服务
-
【Nginx基础】负载均衡服务器(2)
1 案例描述使用一台虚拟机,使用端口模拟不同的服务,设置四个nginx配置文件,作用分别如下:端口作用配置文件8888负载均衡/etc/nginx/conf.d/slb.conf8081应用服务1,服务地址:/opt/app/slb1;/etc/nginx/conf.d/slb1.conf8082应用服务2,服务地址:/opt/app/slb2;/etc/nginx/conf.d/slb2.conf8083备份服务器/etc/nginx/conf.d/slb3.conf用户访问8888,可以转发到8081和8082上2 配置文件(1) 负载均衡服务nginx配置文件 slb.conf#设置负载
-
【Nginx基础】负载均衡服务器(1)
1 负载均衡简介负载均衡提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。负载均衡有两方面的含义:首先,大量的并发访问或数据流量分担到多台节点设备上分别处理,减少用户等待响应的时间;其次,单个重负载的运算分担到多台节点设备上做并行处理,每个节点设备处理结束后,将结果汇总,返回给用户,系统处理能力得到大幅度提高。2 负载均衡分类(1) 二层负载均衡(mac):根据OSI模型分的二层负载,一般是用虚拟mac地址方式,外部对虚拟MAC地址请求,负载均衡接收后分配后端实际的MAC地址响应);(2) 三层负载均衡(ip):一般采用虚拟IP
-
【Nginx基础】开启防盗链功能
1 防盗链出现原因虽说互联网崇尚分享精神,但是网站资源若是被一些流量大的网站引用或者爬取(图片或其他静态文件),也会造成自己的服务器压力过大,甚至不能正常提供对外服务。所以,有必要防止其他网站盗用本网站的资源。2 防盗链的思路设置一个变量,valid_referers,也就是白名单,只允许以下网址访问,然后,判断这个变量是否存在,不存在则是非法盗链,甩一个默认广告图片给他显示吧!3 开启图片防盗链例子location ~* \.(gif|jpg|png|jpeg)$ { #设置过期时间 expires 30d; #允许本站下访问图片,也允许搜索引擎访问图片 valid_referers *.h
-
【Nginx基础】设置允许跨站访问
1 跨站访问的原因出于安全的原因,浏览器默认不允许跨站访问,因为跨站访问很容易造成跨站攻击(CSRF),也就是黑客利用A网站去访问用户曾经访问过的B网站;当然,不默认的话就可以跨站访问了,浏览器会根据服务端返回的头部信息(Access-Control-Allow-Origin)判断是否允许跨域访问,如果服务端都允许跨站访问,浏览器段也就没必要做跨域限制,也就是说,我们可以在服务器端的nginx设置Access-Control-Allow-Origin这个参数就可以实现跨站访问了。2 跨站访问配置例子location: / { #允许这个网站跨站访问。如果允许全部,那就设置为*,当然,这样很傻。
-
【Nginx基础】静态资源服务相关配置
Nginx可以作为静态资源服务使用,下面列举静态资源服务的相关配置1 常用配置(1) sendfile使用nginx作为静态资源服务时,通过配置sendfile可以有效提高文件读取效率,设置为on表示启动高效传输文件的模式。sendfile可以让Nginx在传输文件时直接在磁盘和tcp socket之间传输数据;如果这个参数不开启,会先在用户空间(Nginx进程空间)申请一个buffer,用read函数把数据从磁盘读到cache,再从cache读取到用户空间的buffer,再用write函数把数据从用户空间的buffer写入到内核的buffer,最后到tcp socket;开启这个参数后可以让