本篇文章主要讲nginx的一些常用配置。
功能
1.Nginx介绍
2.Ningx应用场景
3.Windows环境下安装Nginx
4.什么是nginx反向代理
5.nginx访问权重的设置.
6.Nginx如何防止服务器宕机以及解决延迟率高的问题
7.nginx如何解决跨域问题
8.Nginx如何避免防盗链
9.Nginx防止DDOS(对请求进行限制)
一、nginx入门
1.Nginx介绍?
nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。由俄罗斯的程序设计师Igor Sysoev所开发,官方测试nginx能够支支撑5万并发链接,并且cpu、内存等资源消耗却非常低,运行非常稳定,所以现在很多知名的公司都在使用nginx。
- nginx应用场景
1、http服务器。Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器。
2、虚拟主机。可以实现在一台服务器虚拟出多个网站。例如个人网站使用的虚拟主机。
3、反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。
- Windows环境下安装Nginx
3.1 nginx windows下载地址 密码是nbb1
3.2解压nginx,运行nginx.exe,查看logs中是否有错误,如果没有查看任务管理器中是否有nginx.exe,有的话说明安装正确.
可以在logs当中查看日志,现在访问127.0.0.1即可访问nginx
4.什么是nginx反向代理,
因为实际开发中为了降低服务器的压力,需要使用nginx作转发,nginx--高可用,如果服务器挂了,会自动转到下一台服务器,简单说起来就是备机。
当服务器压力很大,tomcat挂了之后,nginx会自动轮询到下一台服务器.nginx也会挂,所以nginx会有2台,会有个备胎nginx
nginx配置当服务器挂了之后如何自动轮训到下一台服务器。
操作过程中报了个错,原来URL还有字符串限制长度,加上server_name_hash_bucket_size 64;即可
5.nginx访问权重的设置.主要是在server那里加上weight
6.nginx可以监测tomcat服务器是否宕机或者延迟率高的情况下,自动切换到下一台服务器。
7.nginx如何解决跨域问题呢。(跨域的时候ajax发送请求可以得到数据,但是后端回调到前端不行)
回调的时候会报
XMLHttpRequest cannot load http://a.a.com/A/UserFromServlet.No Access-Control-Allow-Origin header is present on the requested resource.Origin http://b.b.com is therefore not allowed access.
其原理就是将不同域名的项目作为一个大项目(比如www.baidu.com/A或者B),A和B是不同域名的2个项目,但是前端访问的时候都是通过www.baidu.com/A或者B去访问,因此等于通过nginx的转发,解决了跨域问题。
8.nginx如何解决防盗链
9.nginx防止用户连续请求过快,nginx设置了一个请求限制,请求间隔不能超过2秒钟(举例),如果访问太频繁,就会返回前端503
关注我的公众号,都是满满的干货!