Nginx

Posted ddqy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx相关的知识,希望对你有一定的参考价值。

技术图片

1.  什么是nginx

Nginx("engine x")是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。

在高连接并发的情况下,NginxApache服务器不错的替代品。

2.    代理服务器

作为邮件代理服务Nginx 同时也是一个非常优秀的邮件代理服务最早开发这个产品的目的之一也是作为邮件代理服务器),Last.fm 描述了成功并且美妙的使用经验。

Nginx 是一个安装非常的简单、配置文件非常简洁(还能够支持perl语法)、Bug非常少的服务。Nginx 启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。你还能够不间断服务的情况下进行软件版本的升级

       代理服务器的作用就是将客户端的 HTTP 请求提交到真实服务器,得到响应后再返还给客户端所谓代理就是第三方的介入

  技术图片

 

 

2.1    正向代理

隐藏了真实的请求客户端,服务端不知道真实的客户端是谁,客户端请求的服务都由代理服务器代替来请求

技术图片

 

 

总结一下,用最简单粗暴的说法:「正向代理」指一对一或多对一,Server 不知道请求的 Client 都是哪些人。

2.2   反向代理

客户端---http--->代理服务器----->未知服务器(由代理服务器自动挑选一台资源服务器<可能是一个“集群”>获取用户请求所需的资源,在这个过程中能很好的体现出负载均衡的作用)

反向代理隐藏了真实的服务端,当我们请求 baidu.com 的时候,就像拨打 QQ 客服热线一样,背后可能有成千上万台服务器为我们服务,但具体是哪一台,你不知道,也不需要知道,你只需要知道反向代理服务器是谁就好了,baidu.com 就是我们的反向代理服务器,反向代理服务器会帮我们把请求转发到真实的服务器那里去。

技术图片 

两者的区别在于代理的对象不一样:正向代理代理的对象是客户端,反向代理代理的对象是服务端。

 

3.  安装Nginx

1. 官网下载相应nginx版本tar

2. 使用xftp上传到linux

3. 解压tar

4. 安装所需依赖

-  yum -y install pcre-devel

-  yum -y install zlib zlib-devel

-  yum -y install openssl openssl-devel

-  yum -y install gcc gcc-c++ autoconf automake make   安装c++编译环境

5. 进入解压开的nginx-1.16.1文件夹找到 configure 执行

6. 然后执行make nginx是一个完全由C语言编写的程序

make命令是将文件编译就想javajavac一样

7. 在执行make installmake install这个命令是将nginx安装

安装好后可以在./usr/local/目录下发现一个nginx的文件夹.

这个就是安装好后的nginx。安装好后目录结构如下
技术图片

 

4.  启动nginx

     在使用nginx前有几个注意点

1.        Nginx用的是80端口 , 把端口对外开放

firewall-cmd --zone=public --add-port=80/tcp --permanent

firewall-cmd --reload

2.        启动:安装好的nginx目录中有一个sbin,里面是一个nginx(可执行文件执行(./nginx

3.        启动后直接在网页输入本机ip即可访问  页面如下

技术图片

4.        Nginx常用命令
    /usr/local/nginx/sbin/nginx                     #
启动nginx 
    /usr/local/nginx/sbin/nginx -s reload              #
重新载入配置文件   
    /usr/local/nginx/sbin/nginx -s reopen             #
重启 Nginx

/usr/local/nginx/sbin/nginx -s stop               # 停止 Nginx

/usr/local/nginx/sbin/nginx -t                   #检查配置文件是否正确

5.  修改nginx.conf配置文件实现反向代理

文件在: /usr/local/nginx/conf/nginx.conf是核心配置文件

技术图片

 

1.    修改windows系统目录中的hosts文件,ip为虚拟机里面的地址

地址:C:WindowsSystem32driversetchosts

         技术图片

2.     http块中添加upstream

tomcat是安装在本机ip地址127.0.0.1即是在别的服务器者需要修改ip

upstream tomcat_server{

         server 127.0.0.1:8080; 

         }

3.     修改server
     server_name  it.nginx.com;        #
自定义访问域名

root  /home/nginx/tomcat_data/;    #静态文件存放路径

index index.html;                 #定义首页

4.     修改server下的location
     proxy_pass http://tomcat_server;           #
映射对应upstream

 proxy _set_header X-Real-P $remote_addr;   #映射nginx真实ip

proxy_set_header Host $Host;             

技术图片

 

 

5.     先检查配置文件是否正确

/usr/local/nginx/sbin/nginx -t(出现以下日志则可以重启nginx了)

技术图片

6.     /usr/local/nginx/sbin/nginx -s reload修改了配置,重启配置.再访问it.nginx.com

技术图片

 

 

 

 

技术图片

1.  什么是Nginx

Nginx("engine x")是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。

在高连接并发的情况下,NginxApache服务器不错的替代品。

2.    代理服务器

作为邮件代理服务Nginx 同时也是一个非常优秀的邮件代理服务最早开发这个产品的目的之一也是作为邮件代理服务器),Last.fm 描述了成功并且美妙的使用经验。

Nginx 是一个安装非常的简单、配置文件非常简洁(还能够支持perl语法)、Bug非常少的服务。Nginx 启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。你还能够不间断服务的情况下进行软件版本的升级

       代理服务器的作用就是将客户端的 HTTP 请求提交到真实服务器,得到响应后再返还给客户端所谓代理就是第三方的介入

  技术图片

2.1    正向代理

客户端---http--->代理服务器----->真实服务器(返回结果)

隐藏了真实的请求客户端,服务端不知道真实的客户端是谁,客户端请求的服务都由代理服务器代替来请求

技术图片

总结一下,用最简单粗暴的说法:「正向代理」指一对一或多对一,Server 不知道请求的 Client 都是哪些人。

2.2   反向代理

客户端---http--->代理服务器----->未知服务器(由代理服务器自动挑选一台资源服务器<可能是一个“集群”>获取用户请求所需的资源,在这个过程中能很好的体现出负载均衡的作用)

反向代理隐藏了真实的服务端,当我们请求 baidu.com 的时候,就像拨打 QQ 客服热线一样,背后可能有成千上万台服务器为我们服务,但具体是哪一台,你不知道,也不需要知道,你只需要知道反向代理服务器是谁就好了,baidu.com 就是我们的反向代理服务器,反向代理服务器会帮我们把请求转发到真实的服务器那里去。

技术图片

 

两者的区别在于代理的对象不一样:正向代理代理的对象是客户端,反向代理代理的对象是服务端。

 

3.  安装Nginx

1. 官网下载相应nginx版本tar

2. 使用xftp上传到linux

3. 解压tar

4. 安装所需依赖

-  yum -y install pcre-devel

-  yum -y install zlib zlib-devel

-  yum -y install openssl openssl-devel

-  yum -y install gcc gcc-c++ autoconf automake make   安装c++编译环境

5. 进入解压开的nginx-1.16.1文件夹找到 configure 执行

6. 然后执行make nginx是一个完全由C语言编写的程序

make命令是将文件编译就想javajavac一样

7. 在执行make installmake install这个命令是将nginx安装

安装好后可以在./usr/local/目录下发现一个nginx的文件夹.

这个就是安装好后的nginx。安装好后目录结构如下
技术图片

4.  启动nginx

     在使用nginx前有几个注意点

1.        Nginx用的是80端口 , 把端口对外开放

firewall-cmd --zone=public --add-port=80/tcp --permanent

firewall-cmd --reload

2.        启动:安装好的nginx目录中有一个sbin,里面是一个nginx(可执行文件执行(./nginx

3.        启动后直接在网页输入本机ip即可访问  页面如下

技术图片

4.        Nginx常用命令
    /usr/local/nginx/sbin/nginx                     #
启动nginx 
    /usr/local/nginx/sbin/nginx -s reload              #
重新载入配置文件   
    /usr/local/nginx/sbin/nginx -s reopen             #
重启 Nginx

/usr/local/nginx/sbin/nginx -s stop               # 停止 Nginx

/usr/local/nginx/sbin/nginx -t                   #检查配置文件是否正确

5.  修改nginx.conf配置文件实现反向代理

文件在: /usr/local/nginx/conf/nginx.conf是核心配置文件

技术图片

 

1.    修改windows系统目录中的hosts文件,ip为虚拟机里面的地址

地址:C:WindowsSystem32driversetchosts

         技术图片

2.     http块中添加upstream

tomcat是安装在本机ip地址127.0.0.1即是在别的服务器者需要修改ip

upstream tomcat_server{

         server 127.0.0.1:8080; 

         }

3.     修改server
     server_name  it.nginx.com;        #
自定义访问域名

root  /home/nginx/tomcat_data/;    #静态文件存放路径

index index.html;                 #定义首页

4.     修改server下的location
     proxy_pass http://tomcat_server;           #
映射对应upstream

proxy_set_header X-Real-IP $remote_addr;   #映射nginx真实ip

proxy_set_header Host $Host;             

1技术图片

5.     先检查配置文件是否正确

/usr/local/nginx/sbin/nginx -t(出现以下日志则可以重启nginx了)

技术图片

6.     /usr/local/nginx/sbin/nginx -s reload修改了配置,重启配置.再访问it.nginx.com

技术图片

 

以上是关于Nginx的主要内容,如果未能解决你的问题,请参考以下文章

NginxNginx配置REWRITE隐藏index.php

NginxNginx配置文件解析

NginxNginx基础操作

NginxNginx基础操作

NginxNginx基础操作

NginxNginx基础操作