Nginx服务器指南

Nginx服务器

Nginx服务器

nginx能处理负载重的网站,包括yandex。netflix
相比于apache,nginx支持更少的资源,更多的并发连接,更高的效率
安装简单,配置文件简洁,bug少


Nginx特性

1、使用可拓展的事件驱动架构,占用资源少
2、性能极佳
3、安装简单


Nginx架构

处理并发连接的传统模式:产生一个新的线程,分配堆栈内存,以及创建新的执行上下文。会比较消耗资源。
nginx使用大量的复用和事件通知,并专门用于分离进程的特定任务,连接在单线程中高效进行和循环处理。


Nginx代码架构

nginx工作码包括核心和功能模块。
核心模块:维护严格的运行循环,并在处理请求的每个阶段执行模块代码的适当部分。
nginx的模块化架构通常允许开发人员扩展一组Web服务器功能,而无需修改nginx内核。


Nginx工作模式

nginx不会为每个连接生成一个进程或者线程,工作worker来自于共享listen的新请求


Nginx安装

在Linux上进行安装:nginx.org
-----------------------------------------------------
在FreeBSD上安装:在FreeBSD上,可以从包或通过ports系统安装nginx。
----------------------------------------------------
编译安装(兼容性超级好,但是略有复杂)
以CentOS为例:
---------------
1.更新系统

yum update yum upgrade

---------------
2.安装依赖

yum -y install gcc gcc-c++ autoconf automake libtool make cmake 
yum -y install zlib zlib-devel openssl openssl-devel pcre-devel

-------------------
3.下载Nginx
官网下载:http://nginx.org/en/download.html
直接使用命令

cd /usr/local/src 
wget -c http://nginx.org/download/nginx-1.10.3.tar.gz

4.安装Nginx
(1)解压:

tar -zxvf nginx-1.10.3.tar.gz

(2)新建给nginx使用的用户和组

group add nginx useradd -g nginx -M nginx

#	(  -M 不建立home目录)
	#修改/etc/passwd的参数,使得nginx用户无法进行bash登录,把nginx用户后面的  /bin/bash 改为  /sbin/nologin
vi /etc/passwd nginx:x:1002:1003::/home/nginx:/sbin/nologin

(3)开始进行编译安装

cd /usr/local/src/nginx*
pwd
./configure \
--prefix=/usr/local/nginx \ 
--pid-path=/usr/local/nginx/run/nginx.pid \ 
--with-http_ssl_module \ 
--user=nginx \ 
--group=nginx \ 
--with-pcre \ 
--without-mail_pop3_module \
 --without-mail_imap_module \ 
--without-mail_smtp_module 
make
make install
make test

(4)查看安装后的版本

/usr/local/nginx/sbin/nginx -v

5.调试及配置Nginx
(可选)修改默认端口:

vi /usr/local/nginx.conf

找到listen 80 改为listen 8080
检查配置是否合法:

/usr/local/sbin/nginx -t

1).启动nginx,查看进程

/usr/local/nginx/sbin/nginx ps -ef | grep nginx

2).nginx管理的几种方式
启动:/usr/local/
退出nginx的几种方式:
从容停止nginx:kill -QUIT [主进程号]
快速停止nginx:kill -TERM 主进程号
强制停止nginx:pkill -9 nginx
平滑重启nginx:/usr/nginx/sbin/nginx -s reload

3).进行验证,使用curl访问local host进行测试
Nginx的快速入门:
1.启动、停止和重载
nginx -s [signal]
其中signal的可能为:
stop \ quit \ reload \ reopen(重新打开日志文件)

Nginx的配置方法

1.配置文件的解析
配置文件由指令控制的模块组成
树状结构,大指令包含小指令:
在这里插入图片描述
小指令由 ; 号结束
大指令由 { } 结束
一般的配置内容应该都能看懂,这里不再进行说明。

2.反向代理
反向代理是将流量通过nginx移交给本地的某个服务器或者外网的某个服务器进行处理。
反向代理的语法是这样的:

location / { 
	proxy_pass http://172.17.0.8888; 
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值