概述
Nginx反向代理
步骤一:部署实施后端Web服务器
步骤二:配置Nginx服务器,添加服务器池,实现反向代理功能
[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf
.. ..
http {
.. ..
#使用upstream定义后端服务器集群,集群名称任意(如webserver)
#使用server定义集群中的具体服务器和端口
upstream webserver {
server 192.168.2.100:80;
server 192.168.2.200:80;
}
server {
...
location / {
#通过proxy_pass将用户的请求转发给webserver集群
proxy_pass http://webserver;
}
}
配置upstream服务器集群池属性
http {
.. ..
upstream webserver {
#通过ip_hash设置调度规则为:相同客户端访问相同服务器
ip_hash;
server 192.168.2.100 weight=1 max_fails=2 fail_timeout=10;
server 192.168.2.200 weight=2 max_fails=2 fail_timeout=10;
}
.. ..
Nginx的TCP/UDP调度器
配置Nginx服务器,添加服务器池,实现TCP/UDP反向代理功能
[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf
stream {
upstream backend {
server 192.168.2.100:22; //后端SSH服务器的IP和端口
server 192.168.2.200:22;
}
server {
listen 12345; //Nginx监听的端口
proxy_pass backend;
}
}
http {
.. ..
}
Nginx常见问题处理
[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf
.. ..
charset utf-8; //仅在需要中文时修改该选项
error_page 404 /404.html; //自定义错误页面
location /status {
stub_status on;修改Nginx配置文件,定义状态页面
#allow IP地址;
#deny IP地址;
}
修改Nginx配置文件,增加并发量
[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf
worker_processes 2; //与CPU核心数量一致
events {
worker_connections 65535; //每个worker最大并发连接数
优化Linux内核参数(最大文件数量)
[root@proxy ~]# ulimit -a //查看所有属性值
[root@proxy ~]# ulimit -Hn 100000 //设置硬限制(临时规则)
[root@proxy ~]# ulimit -Sn 100000 //设置软限制(临时规则)
[root@proxy ~]# vim /etc/security/limits.conf
.. ..
* soft nofile 100000
* hard nofile 100000
优化后测试服务器并发量
[root@proxy ~]# ab -n 2000 -c 2000 http://192.168.4.5/
优化Nginx数据包头缓存和定义对静态页面的缓存时间
[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf
.. ..
http {
client_header_buffer_size 1k; //默认请求包头信息的缓存
large_client_header_buffers 4 4k; //大请求包头部信息的缓存个数与容量
.. ..
location ~* .(jpg|jpeg|gif|png|css|js|ico|xml)$ {
expires 30d; //定义客户端缓存时间为30天
}
}
最后
以上就是激情龙猫为你收集整理的Nginx反向代理步骤详解的全部内容,希望文章能够帮你解决Nginx反向代理步骤详解所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复