Nginx Linux和Windows安装教程
前言
本篇文章主要介绍的是Nginx Linux环境和Windows的安装教程。
Nginx 介绍
Nginx("engine x")是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。
HTTP基础功能:
- 处理静态文件,索引文件以及自动索引;
- 反向代理加速(无缓存),简单的负载均衡和容错;
- FastCGI,简单的负载均衡和容错;
- 模块化的结构。过滤器包括gzipping, byte ranges, chunked responses, 以及 SSI-filter 。在SSI过滤器中,到同一个 proxy 或者 FastCGI 的多个子请求并发处理;
- SSL 和 TLS SNI 支持;
IMAP/POP3 代理服务功能:
- 使用外部 HTTP 认证服务器重定向用户到 IMAP/POP3 后端;
- 使用外部 HTTP 认证服务器认证用户后连接重定向到内部的 SMTP 后端;
- 认证方法:
- POP3: POP3 USER/PASS, APOP, AUTH LOGIN PLAIN CRAM-MD5;
- IMAP: IMAP LOGIN;
- SMTP: AUTH LOGIN PLAIN CRAM-MD5;
- SSL 支持;
- 在 IMAP 和 POP3 模式下的 STARTTLS 和 STLS 支持;
...
更多的理论知识这里就不在介绍了,详细的可以查看官方的文档,地址:http://nginx.org/en/

上图是关于Nginx的反向代理和负载均衡实现的图,所谓的反向代理就是把客户端的请求通过一定的规则进行分发给后端服务器,负载均衡就是根据制定的策略将请求分发给不同的服务器。Nginx默认的是weight(权重)轮询(默认),将接收到的请求按照权重分配到不同的后端服务器,权重越大,该服务器分配的请求概率越大,相应请求也就越多,在运行过程如果某一台服务器突然宕机,Nginx检测到之后会自动将该服务器移除,保证请求不会受到影响,个人测试在有宕机的服务器的时候进行访问会有一点卡顿,后续就好了。
这里在简单说下正向代理和反向代理的区别,一句话概括:
正向代理主要是为客户端发出请求。
反向代理主要是为服务端接收请求。
Nginx Linux安装
nginx依赖于pcre、Openssl和zlib,PCRE作用是让Nginx支持Rewrite 功能。
- PCRE下载地址: https://sourceforge.net/projects/pcre/files/
- Zlib下载地址: http://zlib.net/
- Openssl 下载地址: http://www.openssl.org/source
- Nginx下载地址: http://nginx.org/download
PCRE安装
1、文件准备
将下载的文件通过ftp进行文件上传到/opt/nginx目录下,没有就新建。
然后进行解压,解压命令示例:
tar zxvf pcre-8.35.tar.gz
2、安装
然后进行解压之后的目录,进行编译安装,输入:
cd pcre-8.35
./configure
make
make install
安装成功之后查看版本信息,输入:
pcre-config --version

Zlib安装
基本和上述一样。
1、文件准备
将下载的文件通过ftp进行文件上传到/opt/nginx目录下,然后进行解压,解压命令示例:
tar -zxvf zlib-1.2.11.tar.gz
2、安装
然后进行解压之后的目录,进行编译安装,输入:
cd zlib-1.2.11
./configure
make
make install
Openssl 安装
基本和上述一样。
1、文件准备
将下载的文件通过ftp进行文件上传到/opt/nginx目录下,然后进行解压,解压命令示例:
tar -zxvf openssl-1.0.2q.tar.gz
2、安装
然后进行解压之后的目录,进行编译安装,输入:
cd openssl-1.0.2q
./config
make
make install
Nginx 安装
这个基本也一样。
1、文件准备
将下载的文件通过ftp进行文件上传到/opt/nginx目录下,然后进行解压,解压命令示例:
tar zxvf nginx-1.6.2.tar.gz
2、安装
然后进行解压之后的目录,进行编译安装,输入:
cd nginx-1.6.2
./config
make
make install
安装成功之后查看版本信息,输入:
/usr/local/nginx/sbin/nginx -v
若出现:Nginx: error while loading shared libraries: libpcre.so.1
则说明未安装pcre或安装了未设置软链,安装或者设置器软链即可,命令示例:
ln -s /usr/local/lib/libpcre.so.1 /lib64/

3、Nginx命令
测试nginx.conf的配置是否正确命令:
/usr/local/nginx/sbin/nginx -t
根据nginx.conf里的配置,启动nginx服务命令:
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
配置文件热加载命令:
/usr/local/nginx/sbin/nginx -s reload
关闭命令:
kill -QUIT `cat /usr/local/nginx/logs/nginx.pid`
或找到nginx的进程,然后kill杀死即可,包括nginx的守护进程。
ps -ef | grep nginx
kill -9 pid
重启命令:
kill -HUP `cat /usr/local/nginx/logs/nginx.pid`
Nginx启动成功之后在浏览器直接输入linux的ip便可以直接访问,端口默认的是80,可以不用输入端口!

Nginx Windows安装
Windows Nginx安装不需要上述的依赖,直接下载解压运行即可。
Windows Nginx 下载地址: https://nginx.org/en/download.html?_ga=2.72556755.1143934847.1574131849-1552750179.1574131849
下载界面:

下载Nginx之后进行解压,双击nginx.exe运行或者在同级目录下cmd输入start nginx 启动。
输入:nginx -s stop 或 nginx -s quit都可以停止nginx,区别就是后者会保存相关信息,前者不会。
热加载命令依旧是 nginx -s reload。
Nginx启动成功之后在浏览器直接输入localhost或127.0.0.1便可以直接访问!

其他
参考Nginx官网: http://nginx.org/en/
音乐推荐
原创不易,如果感觉不错,希望点赞或推荐!您的支持是我写作的最大动力!
版权声明:
作者:虚无境
博客园出处:http://www.cnblogs.com/xuwujing
CSDN出处:http://blog.csdn.net/qazwsxpcm
掘金出处:https://juejin.im/user/5ae45d5bf265da0b8a6761e4
个人博客出处:http://www.panchengming.com
Nginx Linux和Windows安装教程的更多相关文章
- 转:xdebug在linux下的安装教程
原文:xdebug在linux下的安装教程 [注意,本人是PHP7.1.7 Nginx ,第7步没有做,但是xdebug.so就已经在PHP的扩展文件夹里面了.目录是phpinfo的extension ...
- Linux及Windows安装Redis(详细)
Linux及Windows安装Redis 1.Windows安装教程 1.1下载 https://github.com/MSOpenTech/redis/releases 进入github里下载red ...
- MySQL 8.0.12 基于Windows 安装教程(超级详细)
MySQL 8.0.12 基于Windows 安装教程(超级详细) (一步一步来,装不了你找我!) 本教程仅适用Windows系统,如果你原本装了没装上,一定要先删除原本的数据库,执行:mysqld ...
- PHP7+Nginx的配置与安装教程详解
下面脚本之家小编把PHP7+Nginx的配置与安装教程分享给大家,供大家参考,本文写的不好还请见谅. 系统环境:centos6.5 x64 软件版本:nginx-1.10.0 php-7.0.6 安装 ...
- 宝塔Linux面板新手安装教程【转】
一.使用远程连接软件 (如 Putty.XShell) 连接你的Linux服务器,本教程以 Putty 为例. 1.动 Putty.exe 程序,进入 Putty 主界面. 2.在 Host Name ...
- linux中RabbitMQ安装教程
linux中RabbitMQ安装教程 在做一个微服务项目时候用到消息队列,于是深入了解了消息队列知识,并在linux上安装了Rabbitmq,本博客介绍Rabbitmq的安装教程,想要深入了解消息队列 ...
- JAVA(windows)安装教程
JAVA(windows)安装教程 一.下载: https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133 ...
- [Linux] PHP程序员玩转Linux系列-Linux和Windows安装nginx
1.PHP程序员玩转Linux系列-怎么安装使用CentOS 2.PHP程序员玩转Linux系列-lnmp环境的搭建 3.PHP程序员玩转Linux系列-搭建FTP代码开发环境 4.PHP程序员玩转L ...
- Linux下aMule安装教程
Linux下载神器aMule安装教程 aMule可以说是Linux下的电驴,你们说eMule是不是就是aMule的Windows版呢?也是开源的. Fedora安装aMule很简单,两条命令就搞定. ...
随机推荐
- PowerSploit-CodeExecution(代码执行)脚本渗透实战
首先介绍一下国外大牛制作的Powershell渗透工具PowerSploit,上面有很多powershell攻击脚本,它们主要被用来渗透中的信息侦察.权限提升.权限维持. 项目地址:https://g ...
- HTML innerHTML、textContext、innerText
网址 : https://developer.mozilla.org/en-US/docs/Web/API/Element/innerHTML 1.innerHTML : 获得.修改元素的用HTML语 ...
- [Noip1997] 棋盘问题(2)
题目描述 在N×NN \times NN×N的棋盘上(1≤N≤10)(1≤N≤10)(1≤N≤10),填入1,2,…,N21,2,…,N^21,2,…,N2共N2N^2N2个数,使得任意两个相邻的数之 ...
- 对比js库分枝Jquery和js获取对象的方式
一.Jquery和JS的认识 对于这点不谈详细,但能有一个能有一个全面的印象,Jquery本质上也是JS,只不过用一句话概括就是 “write letter and do more”,写的更少,做 ...
- Linux对目录操作命令
cd /home 进入 '/ home' 目录 cd .. 返回上一级目录 cd ../.. 返回上两级目录 cd 进入个人的主目录 cd ~u ...
- CMMS系统中工单派案&调度
系统为客户经理提供一个有效的调度控制台,由客户经理负责将需要外派现场处理的工单进行统一的分配调度,系统显示每个技术人员的时间表,根据专业技能.可用性.距离或其他资格标准筛选技术服务人员,并向调度人员提 ...
- EFCore--->> CodeFirst (Vs2019 Core3.0)的简单使用
直接上干货 EFCore--->> CodeFirst (Vs2019 Core3.0) 1: 安装下面3个对应的package(在Nuget控制台或者直接NuGet包查询点击下载,我喜欢 ...
- SpringBoot整合MybatisPlus3.X之逻辑删除(三)
pom.xml <dependencies> <dependency> <groupId>org.springframework.boot</groupId& ...
- ArcGIS Engine添加地图元素的实现
在ArcGIS中,我们使用的制图控件除了MapControl之外,还有PageLayoutControl,用于页面布局和制图,生成一幅成品地图. PageLayoutControl 封装了PageLa ...
- Pyhton网络爬虫之CrawlSpider
一.什么是CrawlSpider? 在学习CrawlSpider之前如果我们想爬取某网站前100页的内容的话,我们可以使用的方法是通过Request模块手动发起请求,递归调用parse方法,写起来非常 ...