nginx负载均衡(反向代理)
6,安装nginx
6.1 依赖库安装 要安装在root根目录里,不要装在虚拟环境里面
yum install gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y
6.2 下载源码包
yum install wget # 需要提前下载wget工具
wget -c https://nginx.org/download/nginx-1.12.0.tar.gz
6.3 解压缩源码
tar -zxvf nginx-1.12.0.tar.gz
6.4 切换到nginx源码包路径
cd nginx-1.12.0
6.5 配置,编译安装
./configure --prefix=/opt/nginx1-12/ # 注意这里指定了将解压文件存放到的路径,是从根目录开始的
make && make install
6.6 启动nginx,进入sbin目录,找到nginx启动命令
cd ~ # 先回到根目录
cd /opt # 进入这个文件夹,注意这个文件夹被隐藏了
ls # 查看opt文件夹里面的子文件或文件夹会看到 nginx1-12
cd nginx1-12 # 进入这个文件夹
ls # 显示子文件或文件夹,会看到sbin文件夹
cd sbin # 进入sbin文件夹,sbin文件时放的启动nginx的配置,注意:cd sbin不要写成 cd /sbin,这样进去的是根目录里面的sbin,就进错目录了
#注意一定记得关闭防火墙
./nginx # 启动
./nginx -s stop # 关闭
./nginx -s reload # 重新加载
cd nginx1-12 #
netstat -tunlp | grep 80 # 服务启动没启动,去看端口来判断。80端口就是net默认的端口
ps -ef | grep nginx # 然后看nginx程序跑起来没
ip a # 看ip地址,第二个地址是10.0.0.200。然后通过浏览器访问一下。看到
Welcome to nginx!
表示,服务启动成功!
7,nginx日志访问功能
7.1 进入nginx的配置目录
cd conf/ # 在nginx1-12目录里面sbin文件是和启动服务相关,conf和配置相关。进入conf目录后会看到一个nginx.conf主配置文件。
7.2 编辑nginx.conf,并打开access.log的日志功能
vim nginx.conf # 然后输入i进入编辑模式,然后将下面四行的注释符去掉,日志就生效了。保存退出:wq
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main;
7.3 重启nginx
cd ../sbin # 进入sbin目录重启nginx
nginx -s reload
7.4 查看效果
cd ../logs # 进入nginx1-12里面免得logs目录,这个目录和日志相关。
access.log # 这样就可以看浏览器访问10.0.0.200的日志记录了,里面可以看请求方式,浏览器信息等
7.5 增加黑名单
vim nginx.conf # 在编辑里面加黑名单
# 按照下面的方式添加ip地址即可
error_page 500 502 503 504 /50x.html;
location = /50x.html {
deny 196.128.12.94;
deny 196.128.12.9;
root html;
}
注意:添加完黑名单记得重启nginx服务就行了
8,nginx的反向代理
8.1 准备
nginx的负载均衡也叫反向代理
准备两台虚拟机服务器并安装好nginx,并启动服务。我准备的是10.0.0.200和10.0.0.128
8.2 主负载均衡节点的配置文件,就是在它们的配置文件修改参数
10.0.0.128当作主服务器
cd /opt/nginx1-12/conf # 进入配置文件目录
vim nginx.conf # 修改配置文件
i # 输入i进入编辑模式
location / {
proxy_pass http://10.0.0.200; # 在location添加proxy_pass http://10.0.0.200 添加副服务器的地址
root html;
index index.html index.htm;
}
# 保存并退出,然后重启nginx服务。 10.0.0200当作副服务器
# 进入nginx1-12目录,ls 会看到一个html
cd html # 进入html目录,ls 会看到index.html
vim index.html # 编辑页面,添加一句话 <h1>这是200副服务器的index页面</h1>,注意会乱码,在<head>加<meta charset=utf8>就不会乱码了
# 然后进入sbin目录重启服务,然后浏览器访问10.0.0.128就会看到呈现的是200副服务器给的index页面 # 总结:就是访问主服务器,主服务器将请求转给副服务器处理,返回副服务器的页面
uname -r 看内核
nginx负载均衡(反向代理)的更多相关文章
- 架构之Nginx(负载均衡/反向代理)
Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器 ,也是一个 IMAP/POP3/SMTP 代理 服务器 . Nginx 是由 Igor Sys ...
- nginx 负载均衡 反向代理
nginx 通过方向代理实现负载均衡,负载均衡是大流量网站要做的措施,单从字面上的意思来理解为N台服务器平均分担负载,不会因为某一台服务器负载高宕机而影响用户访问网站,负载均衡至少需要三台服务器, 既 ...
- Nginx负载均衡反向代理 后端Nginx获取客户端真实IP
Nginx 反向代理后,后端Nginx服务器无法正常获取客户端的真实IP nginx通过http_realip_module模块来实现的这需要重新编译,如果提前编译好了就无需重新编译了1,重新编译ng ...
- keepalived + nginx(负载均衡反向代理HTTP,https) + tomcat(HTTP,https)
基本架构: nginx(192.168.116.198) client --->keepalived(116.200) ------> tomcat (192.16 ...
- Nginx负载均衡反向代理
http{ upstream test.com { server 118.118.66.88:8080; } server { listen 80; server_name www.test.com; ...
- Nginx HTTP负载均衡/反向代理的相关参数测试
原文地址:http://www.cnblogs.com/xiaochaohuashengmi/archive/2011/03/15/1984976.html 测试目的 (1)弄清楚HTTP Upstr ...
- Nginx服务器部署 负载均衡 反向代理
Nginx服务器部署负载均衡反向代理 LVS Nginx HAProxy的优缺点 三种负载均衡器的优缺点说明如下: LVS的优点: 1.抗负载能力强.工作在第4层仅作分发之用,没有流量的产生,这个特点 ...
- nginx域名转发 负载均衡 反向代理
公司有三台机器在机房,因为IP不够用,肯定要分出来,所以要建立单IP 多域名的反向代理, 就是当请求www.abc.com 跳转到本机, 请求www.bbc.com 跳转到192.168.0.35 机 ...
- nginx做为web容器部署静态资源以及做负载均衡反向代理实现
需求: 此时前台开发完成打包生成静态资源文件,要做到以下方面: 使用nginx部署静态资源,同时nginx要实现端口转发,隐藏真实后台地址,同时后台需要做一个负载均衡. localhost:7001 ...
随机推荐
- 如何让FireFox/chrome新打开的标签页在后台打开,而不是立即跳转过去
firefox: 地址栏输入about:config 找到下面三项,全部设为true browser.tabs.loadInBackground browser.tabs.loadDivertedIn ...
- Java8 利用Lambda处理List集合循环给另外一个List赋值过滤处理
1.利用stream().forEach()循环处理List; List<String> list = Lists.newArrayList();//新建一个List 用的google提供 ...
- grid - 网格项目跨行或跨列
默认情况下网格项目跨度只有一个列和行,但可以跨越多个行和列. 1.可以通过设置grid-column-end和grid-column-start距离多个网络线号实现多个列跨越. <view cl ...
- 70个注意的Python小Notes
Python读书笔记:70个注意的小Notes 作者:白宁超 2018年7月9日10:58:18 摘要:在阅读python相关书籍中,对其进行简单的笔记纪要.旨在注意一些细节问题,在今后项目中灵活运用 ...
- Oracle更改redo log大小 or 增加redo log组
(1)redo log的大小可以影响 DBWR 和 checkpoint : (2)arger redo log files provide better performance. Undersize ...
- 【转】[Network] 计算机网络基础知识总结
阅读目录 1. 网络层次划分 2. OSI七层网络模型 3. IP地址 4. 子网掩码及网络划分 5. ARP/RARP协议 6. 路由选择协议 7. TCP/IP协议 8. UDP协议 9. DNS ...
- (原)Ring loss Convex Feature Normalization for Face Recognition
转载请注明出处: http://www.cnblogs.com/darkknightzh/p/8858998.html 论文: Ring loss: Convex Feature Normalizat ...
- google全球地址
IP Addresses of Google Global Cache www.kookle.co.nr Bulgaria 93.123.23.1 93.123.23.2 93.123.23.3 93 ...
- App界面设计规范-字体规范
通过对不同类型的app进行总结,总结出app的字体规范. 一.字体选择 1.IOS:苹果ios 9系统开始,系统最新的默认中文字体是:苹方.英文字体是: San Francisco 2.Android ...
- ThreadPoolExecutor 线程池浅析
作为Executor框架中最核心的类,ThreadPoolExecutor代表着鼎鼎大名的线程池,它给了我们足够的理由来弄清楚它. 下面我们就通过源码来一步一步弄清楚它. 内部状态 线程有五种状态:新 ...