1.编译安装配置完成

/opt/nginx11/html/index.html   这是网页的首页文件

2. nginx.conf主配置文件学习

######################################如下
worker_processes ; nginx工作进程数,根据cpu的核数定义
events {
worker_connections ; #连接数
}
#http区域块,定义nginx的核心web功能
http {
include(关键字) mime.types(可修改的值);
default_type application/octet-stream; #定义日志格式
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;
sendfile on;
#tcp_nopush on;
#keepalive_timeout ;
#保持长连接
keepalive_timeout ;
#支持图片 gif等等压缩,减少网络带宽
gzip on; #这个server标签 控制着nginx的虚拟主机(web站点)
server {
# 定义nginx的入口端口是80端口
listen ;
# 填写域名,没有域名就写ip地址
server_name www.s15rihan.com;
# 定义编码
charset utf-;
# location定义网页的访问url
#就代表 用户的请求 是 192.168.13.79/
location / {
#root参数定义网页根目录
root html;
#定义网页的首页文件,的名字的
index index.html index.htm;
}
#定义错误页面,客户端的错误,就会返回40x系列错误码
error_page /.html;
#500系列错误代表后端代码出错
error_page /50x.html;
}
#在另一个server{}的外面,写入新的虚拟主机2
server{
listen ;
server_name www.s15oumei.com;
location / {
root /opt/myserver/oumei; #定义虚拟主机的网页根目录
index index.html;
}
}
}

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

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

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.然后在浏览器测试访问 两个不同的 web站点

www.s15rihan.com  

www.s15oumei.com  

nginx的访问日志功能

1.开启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 

nginx的拒绝访问功能

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

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

nginx的错误页面优化

.修改nginx.conf 中的配置参数
这个s1540x.html存在 虚拟主机定义的网页根目录下
error_page /s1540x.html; nginx反向代理
.中间商
.微商
.二手贩子 .黄牛 火车票 vpn就是正向代理
中国的用户,在自己机器上,使用了一个vpn的ip地址,然后通过这个vpn的IP地址和外接通信 nginx的反向代理功能(自带了反向代理的功能,天生的二道贩子)
.实验环境准备
准备2个服务器,都安装好nginx软件 nginx1 192.168.13.79 作为web服务器 (理解为火车票售票点) nginx2 192.168.13.24 作为反向代理服务器 (黄牛) 用户 通过浏览器去访问 黄牛 (代理)
浏览器 访问 192.168.13.24 > 192.168.13.79 .在反向代理服务器中添加配置

nginx负载均衡

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

.实验准备
准备三台计算机 nginx1 192.168.13.121 作为nginx负载均衡器 只要我访问这个负载均衡器,查看页面的结果,到底是来自于 nginx2 192.168.13.24 web服务,提供一个页面 nginx3 192.168.13.79 web服务,提供一个页面 .先配置两个nginx web页面
192.168.13.24 准备一个 index.html 写入 你好,我是192.168.13.24机器
192.168.13.79 准备一个 index.html 写入 老了老弟,我是192.168.13. 然后启动两个nginx web 服务 .准备一个nginx负载均衡器 192.168..121机器上,修改nginx.conf
写入如下内容
定义一个负载均衡池,负载均衡的算法有
调度算法    概述
轮询     按时间顺序逐一分配到不同的后端服务器(默认)
weight    加权轮询,weight值越大,分配到的访问几率越高
ip_hash    每个请求按访问IP的hash结果分配,这样来自同一IP的固定访问一个后端服务器
url_hash   按照访问URL的hash结果来分配请求,是每个URL定向到同一个后端服务器
least_conn 最少链接数,那个机器链接数少就分发 .轮询(不做配置,默认轮询) .weight权重(优先级) .ip_hash配置,根据客户端ip哈希分配,不能和weight一起用 upstream s15webserver {
ip_hash;
server 192.168.13.79 ;
server 192.168.13.24 ;
} 然后在虚拟主机中添加 反向代理配置,将用户的请求,直接转发给 负载均衡池中的服务器 server {
listen ;
#当我的请求来自于 192.168..121时,走这>个虚拟主机
server_name 192.168.13.121; #charset koi8-r; #access_log logs/host.access.log main;
#核心配置,就在这,一条proxy_psss参数即可
location / {
proxy_pass http://s15webserver;
#root html;
#index index.html index.htm;
} } .启动负载均衡器的 nginx服务 .在客户端windows中测试访问,负载均衡器 192.168.13.121 ,查看请求分发的结果

nginx深入的更多相关文章

  1. accept_mutex与性能的关系 (nginx)

    注:运行环境CentOS 6+   背景      在对启动了20个worker的nginx进行压力测试的时候发现:如果把配置文件中event配置块中的accept_mutex开关打开(1.11.3版 ...

  2. nginx配置反向代理或跳转出现400问题处理记录

    午休完上班后,同事说测试站点访问接口出现400 Bad Request  Request Header Or Cookie Too Large提示,心想还好是测试服务器出现问题,影响不大,不过也赶紧上 ...

  3. 【大型网站技术实践】初级篇:借助Nginx搭建反向代理服务器

    一.反向代理:Web服务器的“经纪人” 1.1 反向代理初印象 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从 ...

  4. Docker笔记一:基于Docker容器构建并运行 nginx + php + mysql ( mariadb ) 服务环境

    首先为什么要自己编写Dockerfile来构建 nginx.php.mariadb这三个镜像呢?一是希望更深入了解Dockerfile的使用,也就能初步了解docker镜像是如何被构建的:二是希望将来 ...

  5. nginx+php的使用

    原文来自:windows下配置nginx+php环境 按照他的步骤走,亲测可用! 但是这里他后面说的根目录可能有些人有点懵. 其实在设置的时候就设置了: 网站根目录就是www这个目录,如果没创建请自行 ...

  6. nginx的使用

    1.nginx的下载 解压后文件目录: 2.nginx的常用命令 nginx -s stop 强制关闭  nginx -s quit 安全关闭  nginx -s reload 改变配置文件的时候,重 ...

  7. nginx+iis+redis+Task.MainForm构建分布式架构 之 (redis存储分布式共享的session及共享session运作流程)

    本次要分享的是利用windows+nginx+iis+redis+Task.MainForm组建分布式架构,上一篇分享文章制作是在windows上使用的nginx,一般正式发布的时候是在linux来配 ...

  8. windows+nginx+iis+redis+Task.MainForm构建分布式架构 之 (nginx+iis构建服务集群)

    本次要分享的是利用windows+nginx+iis+redis+Task.MainForm组建分布式架构,由标题就能看出此内容不是一篇分享文章能说完的,所以我打算分几篇分享文章来讲解,一步一步实现分 ...

  9. nginx源码分析之模块初始化

    在nginx启动过程中,模块的初始化是整个启动过程中的重要部分,而且了解了模块初始化的过程对应后面具体分析各个模块会有事半功倍的效果.在我看来,分析源码来了解模块的初始化是最直接不过的了,所以下面主要 ...

  10. Nginx如何处理一个请求

    看了下nginx的官方文档,其中nginx如何处理一个请求讲解的很好,现在贴出来分享下.Nginx首先选定由哪一个虚拟主机来处理请求.让我们从一个简单的配置(其中全部3个虚拟主机都在端口*:80上监听 ...

随机推荐

  1. 浅谈微信小程序对于房地产行业的影响

    前几日,我们曾经整理过一篇文章是关于微信小程序对于在线旅游业的影响的一些反思(浅谈微信小程序对OTA在线旅游市场的影响),近日由于生活工作的需要走访了一些房地产的住宅商品房,突然想到微信小程序对于房地 ...

  2. 正确的在循环list的时候删除list里面的元素

    s = [1,2,3,4,5] for i in s: s.remove(i) print(s)   输出结果:[2, 4] 1.当第一次删除后,后面的元素会前移,此时s=[2,3,4,5], 2.然 ...

  3. angular环境安装与配置

    1.安装npm和nodejs,下载地址:https://nodejs.org/en/download/ node -v npm -v   2.配置淘宝代理,下载node_modules npm con ...

  4. Spring 获取当前activeProfile

    WebApplicationContext wac = WebApplicationContextUtils.getWebApplicationContext(getServletContext()) ...

  5. Node+Express中请求和响应对象

    在用 Express 构建 Web 服务器时,大部分工作都是从请求对象开始,到响应对象终止. url的组成: 协议协议确定如何传输请求.我们主要是处理 http 和 https.其他常见的协议还有 f ...

  6. Educational Codeforces Round 60 (Rated for Div. 2) 即Codeforces Round 1117 C题 Magic Ship

    time limit per test 2 second memory limit per test 256 megabytes input standard inputoutput standard ...

  7. WEB开发----springboot的登录拦截机制

    如果是一个后台的管理项目的,有些东西是不能直接就可以访问的,必须要登录才可以进去,所以就需要进行登录拦截,只有登录过的用户才可以正常访问. 登录拦截是不会拦截jsp页面的方法,所以我们需要在Contr ...

  8. 【Tomcat】tomcat配置多域名和虚拟路径

    当我们用浏览器在访问网页的时候,如访问www.baidu.com,一般都认为会在DNS服务器上找这个域名对应的IP,然后向这个IP发送请求 并响应,其实在DNS服务器解析之前,本机会先在你的系统配置文 ...

  9. 线程间的通信----wait/notify机制

    wait/notify机制 实现多个线程之间的通信可以使用wait.notify.notifyAll三个方法.这三个方法都是Object类的方法.wait():导致当前线程等待,直到另一个线程调用此对 ...

  10. JSP计数器

    1.JSP弥补了servlet页面显示的不足:jsp运行时候需要转化为servlet,本质上就是servlet:tomcat下的work目录下有jsp的servlet和对应的class文件;下次再调用 ...