nginx代理入门配置

原创 2018年04月16日 15:13:55

我们用nginx一般都是当作反向代理服务器使用的,那么为什么要使用反向代理呢?

作用1 可以起到保护网站安全的作用,可以设置任何来自Internet的请求都必须先经过代理服务器。
作用2 通过缓存静态资源,加速Web请求。
作用3 实现负载均衡。(顺便说下,目前市面上,主流的负载均衡方案,硬件设备有F5,软件方案有四层负载均衡的LVS,七层负载均衡的Nginx、Haproxy等)
等等。。。

这个图很直观

 


 

虚拟主机配置方式:

基于IP的虚拟主机
可以在一块物理网卡上绑定多个IP地址,需要设置IP别名
server {
    listen      192.168.204.131:80;
    server_name 192.168.204.131;
    root /data/blog;
}
server {
    listen      192.168.204.132:80;
    server_name 192.168.204.132;
    root /data/bbs;
}

基于域名的虚拟主机(最通用常见)
如果没有特殊要求使你必须用一个基于lP的虚拟主机,最好还是使用基于域名的虚拟主机
server {
    listen      80;
    server_name www.blog.com;
    location / {
      root   /usr/local/dev/nginx/page/blog;
      index  index.html;
    }
}
server {
    listen      80;
    server_name www.bbs.com;
    location / {
      root   /usr/local/dev/nginx/page/bbs;
      index  index.html;
    }
}

基于端口的虚拟主机(不常见,一般对外都只开放80,443端口)
server {
    listen 8080;
    root /usr/local/dev/nginx/page/blog;
}
server {
    listen 9090;
    root /usr/local/dev/nginx/page/bbs;
}

 

日志nginx.conf配置

日志指令有2个,一个是log_format 用来设置日志的格式,一个是access_log 用来设置日志的路径,格式和缓存大小
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;

$remote_addr, $http_x_forwarded_for 记录客户端IP地址
$remote_user 记录客户端用户名称
$request 记录请求的URLHTTP协议
$status 记录请求状态
$body_bytes_sent 发送给客户端的字节数,不包括响应头的大小; 该变量与Apache模块mod_log_config里的“%B”参数兼容。
$bytes_sent 发送给客户端的总字节数。
$connection 连接的序列号。
$connection_requests 当前通过一个连接获得的请求数量。
$msec 日志写入时间。单位为秒,精度是毫秒。
$pipe 如果请求是通过HTTP流水线(pipelined)发送,pipe值为“p”,否则为“.”。
$http_referer 记录从哪个页面链接访问过来的
$http_user_agent 记录客户端浏览器相关信息
$request_length 请求的长度(包括请求行,请求头和请求正文)。
$request_time 请求处理时间,单位为秒,精度毫秒; 从读入客户端的第一个字节开始,直到把最后一个字符发送给客户端后进行日志写入为止。
$time_iso8601 ISO8601标准格式下的本地时间。
$time_local 通用日志格式下的本地时间。

Centos 6.7上的Nginx的安装部署

方式1:

 http://nginx.org/download/nginx-1.10.3.tar.gz 下载解压

方式2:
 yum install nginx

nginx集群配置策略

策略1 none(轮询 默认)

策略2 weight(权重)

策略3 ip_hash(访问ip)每个访客访问固定的一台后端服务器,可以解决用户session问题

策略4 fair(第三方)按后端服务器的响应时间来分配请求,响应时间短的优先分配

策略5 url_hash(第三方)和IP哈希类似,只不过针对请求的url进行hash(基于缓存的server,页面静态化)

组合用法:

我的配置:



通用配置放在nginx.conf

其余具体的业务安装来源域名来分开在conf.d配置多个规则,如上步骤12345

部分未公开的Windows 2000核心功能调用(华中地区网络中心 TBsoft)

这些未公开的Windows 2000核心功能调用(Windows NT 4.0一般也可以调用)是针对Intel 80386(I386)以上CPU的,没有移植性,可能是微软公司不公开这些调用的原因。这些...
  • yypp
  • yypp
  • 2001-05-29 11:55:00
  • 591

Nginx 教程二:利用nginx搭建静态文件服务、正向代理服务器、反向代理服务器

使用 Nginx 来提供静态文件服务 Nginx 一大经典使用场景就是用来提供静态文件服务,例如图片、html、脚本、样式文件等,这些文件没有必要交给 tomcat、jboss等应用服务器处...
  • Aeroleo
  • Aeroleo
  • 2017-09-10 14:22:50
  • 665

Nginx基本入门

1、静态HTTP服务器 首先,Nginx是一个HTTP服务器,可以将服务器上的静态文件(如HTML、图片)通过HTTP协议展现给客户端。 配置: 123456 se...
  • u012486840
  • u012486840
  • 2016-11-09 13:45:32
  • 9924

nginx常用代理配置(一)

一、反向代理nginx反向代理 就是说把跨域的url通过本地代理的方式,变成同域的请求,如此来解决跨域问题 该配置下 通过http://localhost/html5/路径下的文件去请求http:/...
  • lzc4869
  • lzc4869
  • 2018-01-29 14:55:54
  • 180

Linux \windows的Nginx静态代理配置文件

Linux: upstream app.time-weekly.com { server 127.0.0.1:8080; } server { listen 8...
  • u010363836
  • u010363836
  • 2017-07-06 15:58:14
  • 744

nginx配置正向代理

一、安装Nginx 服务器选用ubuntu,不做其他配置优化,仅作简单安装 #install Nginx sudo apt-get install nginx#检查服务配置文件 sudo ngin...
  • MEdwardM
  • MEdwardM
  • 2017-05-09 14:07:55
  • 7965

Nginx常见场景代理转发配置

在这里分享的不是nginx的配置文件说明,而是nginx常用的转发代理配置(比如线上多域名配置,后端各种转发代理配置以及较为复杂的代理转发配置),另外还会对常用的转发代理参数配置进行说明。...
  • faye0412
  • faye0412
  • 2017-07-16 15:17:51
  • 9597

nginx代理php-fpm配置

user www www; worker_processes 8; error_log logs/error.log; #error_log logs/error.log notice; ...
  • u013870094
  • u013870094
  • 2017-05-04 09:27:06
  • 1198

Nginx:设置为HTTP代理服务器上网

一、设置NGINX为HTTP代理服务器 1.1 设置Nginx为HTTP代理服务器上网,只需要3步(vim /usr/local/nginx/conf/nginx.conf):       1. ...
  • kanguolaikanguolaik
  • kanguolaikanguolaik
  • 2014-04-01 10:29:19
  • 6225

nginx tcp http 代理配置

#user nobody; worker_processes 1;#error_log logs/error.log; #error_log logs/error.log notice; #...
  • tengdazhang770960436
  • tengdazhang770960436
  • 2016-08-03 16:50:23
  • 3929
收藏助手
不良信息举报
您举报文章:nginx代理入门配置
举报原因:
原因补充:

(最多只允许输入30个字)