一.nginx域名分配

1.创建一个新的服务器

server

 server{
listen 80;
server_name www.s15oumei.com; #定义访问域名
location / {
root /opt/myserver/oumei; #定义虚拟主机的网页根目录
index index.html; #定义虚拟主机的网页根目录下的文件
}
}
}

2.准备两个虚拟主机的网页根目录内容

 [root@localhost myserver]# tree /opt/myserver/
/opt/myserver/
├── oumei
│   └── index.html 写入自己的内容
└── rihan
└── index.html 写入自己的内容

3.配置完成后需要检查配置是否正确

启动nginx目录文件 -t  判断

4..修改windows本地的测试域名 C:\Windows\System32\drivers\etc\hosts文件 写入如下内容

192.168.13.79 www.s15rihan.com

192.168.13.79 www.s15oumei.com

#因为我们没有www.s15oumei.com 也没有  www.s15rihan.com ,因此要在本地搞一个测试域名,
  不想改dns的话,就去阿里云去买一个域名~~~~~~~~~~~~~~~~~~~~~~

5.配置完成后杀死进程,重启

pkill nginx

重启nginx文件

6.然后在浏览器测试访问 两个不同的 web站点

1.1nagix的访问日志功能

1.开启nginx.conf中的日志参数

在配置文件nginx.conf下,解开注释

 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;

2.检查access.log的日志信息,访问时会有访问记录

tail -f access.log

1.2nginx的拒绝访问功能

1.在nginx.conf中,添加参数

在server{}虚拟主机标签中,找到location 然后添加参数

#当访问  192.168.13.79/  的时候
location / {
#拒绝参数是 deny
#deny 写你想拒绝的IP地址
#deny还支持拒绝一整个网站
deny 192.168.13.33;
root /opt/myserver/rihan;
index index.html;
}

1.3nginx的错误页面优化

1.修改nginx.conf 中的配置参数

这个s1540x.html存在 虚拟主机定义的网页根目录下,解开注释

error_page 404 /s40x.html;

s40x.html放在root 下面的根目录下,需自行创建文件

二.nginx反向代理

反向代理意味着在访问代理域名时会访问到要访问的页面,相当于一个媒介

1.实验环境准备

准备2个服务器,都安装好nginx软件

nginx1        192.168.13.79   作为web服务器 (理解为火车票售票点)

nginx2        192.168.13.24    作为反向代理服务器        (黄牛)

用户   通过浏览器去访问   黄牛 (代理)
浏览器 访问 192.168.13.24 > 192.168.13.79

2.在反向代理服务器中添加配置

  proxy_pass  http://192.168.13.104; 
  server{
listen 80;
server_name 192.168.13.106; #自己的域名
location /{
# deny 192.168.125.*/;
proxy_pass http://192.168.125.129; #代理的域名
#root /opt/myserver/dapian;
#index index.html; }

3.关闭进程,重启

4.访问代理域名

三.nginx负载均衡

集群的概念:一堆服务器做一件事

1.实验准备

准备三台计算机

nginx1 192.168.13.121 作为nginx负载均衡器 只要我访问这个负载均衡器,查看页面的结果,到底是来自于

nginx2 192.168.13.24 web服务,提供一个页面

nginx3 192.168.13.79 web服务,提供一个页面

2.先配置两个nginx web页面

192.168.13.24 准备一个 index.html 写入 你好,我是192.168.13.24机器

192.168.13.79 准备一个 index.html 写入 老了老弟,我是192.168.13.79

然后启动两个nginx web 服务

3.准备一个nginx负载均衡器 192.168.13.121机器上,修改nginx.conf 写入如下内容

定义一个负载均衡池,负载均衡的算法有 调度算法   

概述

轮询     按时间顺序逐一分配到不同的后端服务器(默认)

weight    加权轮询,weight值越大,分配到的访问几率越高

ip_hash    每个请求按访问IP的hash结果分配,这样来自同一IP的固定访问一个后端服务器

url_hash   按照访问URL的hash结果来分配请求,是每个URL定向到同一个后端服务器

least_conn 最少链接数,那个机器链接数少就分发

    1.轮询(不做配置,默认轮询)

        2.weight权重(优先级)

        3.ip_hash配置,根据客户端ip哈希分配,不能和weight一起用

3.写入负载解析虚拟机的代码

    keepalive_timeout  65;
upstream node{ server 192.168.125.129 weight=5;
server 192.168.125.130 weight=6;
} #gzip on;
server{
listen 80;
server_name 192.168.125.131;
location /{
proxy_pass http://node;
# deny 192.168.125.*/;
# root /opt/myserver/dapian;
# index index.html; }

4.启动负载均衡器的 nginx服务

5.在客户端windows中测试访问,负载均衡器 192.168.13.121 ,查看请求分发的结果

linux (09) nginx反向代理,负载均衡的更多相关文章

  1. Linux 下 Nginx 反向代理 负载均衡配置

    转载请注明出处:http://blog.csdn.net/smartbetter/article/details/52036350 上一篇分享了 Nginx + JDK + Tomcat + MySQ ...

  2. linux篇—Nginx反向代理负载均衡

    一.环境准备 反向代理功能架构 3台web服务器,组建出web服务器集群 web01 10.0.0.7 172.16.1.7 web02 10.0.0.8 172.16.1.8 web03 10.0. ...

  3. Linux下nginx反向代理负载均衡几种方式以及配置

    下面以ip地址192.168.1.1 和192.168.1.2举例 1.轮询   (1).轮询:每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除.  upstream ...

  4. Nginx 反向代理 负载均衡 虚拟主机配置

    Nginx 反向代理 负载均衡 虚拟主机配置 通过本章你将学会利用Nginx配置多台虚拟主机,清楚代理服务器的作用,区分正向代理和反向代理的区别,搭建使用Nginx反向搭理和负载均衡,了解Nginx常 ...

  5. Nginx 反向代理 负载均衡 虚拟主机

    Nginx 反向代理 负载均衡 虚拟主机配置 通过本章你将学会利用Nginx配置多台虚拟主机,清楚代理服务器的作用,区分正向代理和反向代理的区别,搭建使用Nginx反向搭理和负载均衡,了解Nginx常 ...

  6. 十.nginx反向代理负载均衡服务实践部署

    期中集群架构-第十章-nginx反向代理负载均衡章节章节====================================================================== 0 ...

  7. 【转】Nginx 反向代理 负载均衡 虚拟主机配置

    原文:http://www.cnblogs.com/itdragon/p/8059000.html Nginx 反向代理 负载均衡 虚拟主机配置 通过本章你将学会利用Nginx配置多台虚拟主机,清楚代 ...

  8. Centos7.4 Nginx反向代理+负载均衡配置

    Ningx是一款高性能的HTTP和反向代理服务器,配置起来也比较简单. 测试环境: 172.16.65.190 Nginx-反向代理 172.16.65.191 Ningx-Web 172.16.65 ...

  9. 如何使用Weave以及Docker搭建Nginx反向代理/负载均衡服务器

    Hi, 今天我们将会学习如何使用 Weave 和 Docker 搭建 Nginx 的反向代理/负载均衡服务器.Weave 可以创建一个虚拟网络将 Docker 容器彼此连接在一起,支持跨主机部署及自动 ...

随机推荐

  1. python 连接oracle -- sqlalchemy及cx_Oracle的使用详解

    python连接oracle -- sqlalchemy import cx_Oracle as orcl import pandas as pd from sqlalchemy import cre ...

  2. Javascript定时器只能执行一次

    为了说明问题,代码很短 <script> var test = function(){ console.log('a') } timer1 = setInterval(test(), 10 ...

  3. [C2P1] Andrew Ng - Machine Learning

    About this Course Machine learning is the science of getting computers to act without being explicit ...

  4. sqlite 的去重

    1) 找到重复的记录,归类到一个新表里面 max(id) 是想要删除的record 2) 删除 delete from gallery where id in ( select theid from ...

  5. H5/纯JS实现:把网页中的文字复制到剪切板

    copy =() => { const dom = document.getElementById(`collect-text-${t.Id}`) const selection = windo ...

  6. 在线程内关闭thread handle,导致server crash

    很多年以前了,那时tester发现一个server crash,通过测试pager功能很多次,可以把server搞崩溃. 一般来说,能再现的bug都不难改,不过这次因为要跑很多次test,才能再现cr ...

  7. 简化wcf的service设置

    使用wcf作为c/s的通信桥梁,就免不了要写wcf service,更免不了写一些配置. 但是在把系统中所有的.net remoting service都转换成wcf service以后,发现居然有2 ...

  8. Sharding-JDBC:查询量大如何优化?

    主人公小王入职了一家刚起步的创业公司,公司正在研发一款App.为了快速开发出能够投入市场进行宣传的版本,小王可是天天加班到很晚,忙了一段时间后终于把第一个版本赶出来了. 初期功能不多,表也不多,用的M ...

  9. R语言- 实验报告 - 利用R语言脚本与Java相互调用

    一. 实训内容 利用R语言对Java项目程序进行调用,本实验包括利用R语言对java的.java文件进行编译和执行输出. 在Java中调用R语言程序.本实验通过eclipse编写Java程序的方式,调 ...

  10. javascript判断mp3是否播放完

    javascript判断mp3是否播放完 var audio=document.getElementById('audio'); if(audio){ audio.loop = false; audi ...