简介

Nginx是一款轻量级的文本反向代理服务器及电子邮件代理服务器,其特点是内存少,并发高。

原理

Nginx由内核和模块组成,完成工作是通过查找配置文件将客户端请求映射到一个location block(location是用于URL匹配的命令),location配置的命令会启动不同模块完成工作
反向代理,负载均衡,动静分离

性能优化

web服务器,处理静态文件、索引文件以及自动索引效率高。
(1):代理服务器,快速高效反向代理,提升网站性能。
(2):b负载均衡器,内部支持Rails和PHP,也可支持HTTP代理服务器,对外进行服务。同时支持简单容错和利用算法进行负载均衡。
(3):性能方面,Nginx专门为性能设计,实现注重效率。采用Poll模型,可以支持更多的并发连接,并在大并发时占用很低内存。
(4):稳定性方面,采用分阶段资源分配技术,使CPU资源占用率低。
(5):高可用性方面,支持热备,启动迅速。

安装

将系统包更新到最新版本

yum update

安装gcc
安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装:

yum install gcc-c++

安装 PCRE pcre-devel

PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库。

yum install -y pcre pcre-devel

安装zlib

zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。

yum install -y zlib zlib-devel

安装OpenSSL

OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。

yum install -y openssl openssl-devel

官网下载

下载.tar.gz安装包,地址:https://nginx.org/en/download.html

cd /root/
wget http://nginx.org/download/nginx-1.9.9.tar.gz

解压

tar -zxvf nginx-1.9.9.tar.gz
cd nginx-1.9.9

建立目录

mkdir /service
mkdir /service/nginx
mkdir /service/nginx/temp
mkdir /service/nginx/conf
mkdir /service/log
mkdir /service/log/nginx
mkdir /service/lock

编译配置

./configure \
--prefix=/service/nginx \
--conf-path=/service/nginx/conf/nginx.conf \
--pid-path=/service/nginx/conf/nginx.pid \
--lock-path=/service/lock/nginx.lock \
--error-log-path=/service/log/nginx/error.log \
--http-log-path=/service/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/service/nginx/temp/client \
--http-proxy-temp-path=/service/nginx/temp/proxy \
--http-fastcgi-temp-path=/service/nginx/temp/fastcgi \
--http-uwsgi-temp-path=/service/nginx/temp/uwsgi \
--http-scgi-temp-path=/service/nginx/temp/scgi

编译安装

make -j6
make install

启动、停止nginx

./nginx 
./nginx -s stop
./nginx -s quit
./nginx -s reload
./nginx -s quit:此方式停止步骤是待nginx进程处理任务完毕进行停止。
./nginx -s stop:此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。

查询nginx进程:

ps aux|grep nginx

说明安装运行成功

开机自启动
即在rc.local增加启动代码就可以了。

vi /etc/rc.local

最后增加一行

/service/nginx/sbin/nginx

设置执行权限:

chmod 755 /etc/rc.local

浏览器打开http://你的ip

如出现

关闭防火墙

systemctl stop firewalld.service 

禁止防火墙开启启动

systemctl disable firewalld.service

再次打开

说点什么
支持Markdown语法
好耶,沙发还空着ヾ(≧▽≦*)o
Loading...