菜鸟教程nginx视频_Nginx教程(一) Nginx入门教程
Nginx教程(一) Nginx入门教程
1 Nginx入门教程
Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like协议下发行。由俄罗斯的程序设计师IgorSysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好。
Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的Rambler.ru 站点开发的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日。其将源代码以类 BSD 许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。
它已经在众多流量很大的俄罗斯网站上使用了很长时间,这些网站包括 Yandex、Mail.Ru、 VKontakte,以及 Rambler。据 Netcraft 统计,在 2012 年 8 月份,世界上最繁忙的网站中有 11.48%使用 Nginx 作为其服务器或者代理服务器。目前互联网主流公司360、百度、新浪、腾讯、阿里等,目前中国互联网企业 70%以上公司都在使用 nginx 作为自己的 web 服务器。Nginx 特点是占有内存少,并发能力强,事实上 nginx 的并发能力确实在同类型的网页服务器中表现较好。Nginx 由内核和模块组成,其中,内核的设计非常微小和简洁,完成的工作也非常简单,仅仅通过配置文件将客户端请求映射到一个 location block(location 是 Nginx配置中的一个指令,用于 URL 匹配),而在这个 location 中所配置的每个指令将会启动不同的模块去完成相应的工作。
Nginx 相对于 Apache 优点:
1) 高并发响应性能非常好,官方 Nginx 处理静态文件并发 5w/s
2) 反向代理性能非常强。(可用于负载均衡)
3) 内存和 cpu 占用率低。(为 Apache 的 1/5-1/10)
4) 对后端服务有健康检查功能。
5) 支持 PHP cgi 方式和 fastcgi 方式。
6) 配置代码简洁且容易上手。
2. Nginx 工作原理及安装配置
Nginx 由内核和模块组成,其中,内核的设计非常微小和简洁,完成的工作也非常简单,仅仅通过查找配置文件将客户端请求映射到一个 location block(location 是 Nginx配置中的一个指令,用于 URL 匹配),而在这个 location 中所配置的每个指令将会启动不同的模块去完成相应的工作。
Nginx 的模块从结构上分为
核心模块、基础模块和第三方模块:
核心模块:HTTP 模块、 EVENT 模块和 MAIL 模块
基础模块: HTTP Access 模块、HTTP FastCGI 模块、HTTP Proxy 模块和 HTTP Rewrite模块,
第三方模块:HTTP Upstream Request Hash 模块、 Notice 模块和 HTTP Access Key模块。
Nginx 的高并发得益于其采用了 epoll 模型,与传统的服务器程序架构不同,epoll 是linux 内核 2.6 以后才出现的。Nginx 采用 epoll 模型,异步非阻塞,而 Apache 采用的是select 模型
Select 特点:select 选择句柄的时候,是遍历所有句柄,也就是说句柄有事件响应时,
select 需要遍历所有句柄才能获取到哪些句柄有事件通知,因此效率是非常低。
epoll 的特点:epoll 对于句柄事件的选择不是遍历的,是事件响应的,就是句柄上事
件来就马上选择出来,不需要遍历整个句柄链表,因此效率非常高
1.1 Nginx下载安装
1、Nginx下载:nginx-1.13.0.tar.gz,下载到:/usr/local/software/
wget http://nginx.org/download/nginx-1.13.0.tar.gz
2、Nginx解压安装:
tar -zxvf nginx-1.13.0.tar.gz -C ./
3、Nginx编译
./configure
报错
解决./configure: error: C compiler cc is not found错误:
错误原因:缺少编译环境,安装编译源码所需要的工具和库:
执行命令:yum install gcc gcc-c++ ncurses-devel perl
再次编译:./configure --prefix=/usr/local/nginx
解决./configure: error: the HTTP rewrite module requires the PCRElibrary.错误:
错误原因:缺少HTTP rewrite module模块,禁用或者安装所需要的模块。我们选择安装模块:
执行命令:yum install pcre pcre-devel
解决./configure: error: the HTTP gzip module requires the zliblibrary.错误:
错误原因:缺少HTTP zlib类库,我们选择安装模块:
执行命令:
yuminstall zlib gzip zlib-devel
4.编译成功
5.安装Nginx:
安装命令:make & make install
1.2 Nginx启动
1、查看安装目录:cd
conf 存放配置文件
html 网页文件
logs 存放日志
sbin shell启动、停止等脚本
2、启动nginx
查看进程
常见问题:
解决nginx:[emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)错误:
错误原因:不能绑定80端口,80端口已经被占用。
3、停止nginx,重新加载配置文件
执行命令:kill –INT进程号
启动成功:
重新读取配置文件:
nginx-s reload
4、Nginx信号控制
TERM, INT
快速停止(杀死进程)
QUIT
优雅的关闭进程,即等请求结束后再关闭
HUP
改变配置文件,平滑的重读配置文件
USR1
重读日志,在日志按月/日分割时有用
USR2
平滑的升级
WINCH
优雅关闭旧的进程(配合USR2进行升级)
5.打开浏览器
1.3常用命令
进去nginx的安装目录
进去sbin
常用命令
启动
./nginx
检查 nginx.conf配置文件
./nginx -t
重启
./nginx -s reload
停止
./nginx -s stop
1.4 学习Nginx推荐书籍:
1. 《深入剖析Nginx》
2. 《实战Nginx:取代Apache的高性能Web服务器》
3. 《深入理解Nginx:模块开发与架构解析》
4. 《深入理解Nginx:模块开发与架构解析》
5. 《决战Nginx技术卷:高性能Web服务器部署与运维》
6. 《决战Nginx系统卷:高性能Web服务器详解与运维》
菜鸟教程nginx视频_Nginx教程(一) Nginx入门教程相关推荐
- 菜鸟教程nginx视频_nginx入门菜鸟教程
介绍 Nginx是一个HTTP和反向代理服务器,同时也是一个 IMAP/POP3/SMTP 代理服务器:由于它有丰富的组件库,灵活的配置,较低的消耗和很好的稳定性而远近闻名:Nginx同Apache一 ...
- 菜鸟教程nginx视频_nginx菜鸟教程:Ngnix安装详解
nginx可以使用各平台的默认包来安装,本文是介绍使用源码编译安装,包括具体的编译参数信息. 正式开始前,编译环境gcc g++ 开发库之类的需要提前装好,这里默认你已经装好. ububtu平台编译环 ...
- python 科学计算基础教程电子版-终于领会python科学计算入门教程
PyQt5是基于Digia公司强大的图形程式框架Qt5的python接口,由一组python模块构成.PyQt5本身拥有超过620个类和6000函数及方法.在可以运行于多个平台.PyQt5拥有双重协议 ...
- 电脑雕刻教程_湖南益阳3DMAX建模培训入门教程【仁厚教育】
湖南益阳3DMAX建模培训入门教程[仁厚教育] 仁厚教育学校拥有雄厚的师资力量,中心现有现有专教师多名,均为本科以上,具为扎实的理论基础和丰富的教育经验.所有员工都必须经过仁厚教育总部的岗位培训和考核 ...
- python十分钟教程_简洁的十分钟Python入门教程
[简介] Python是一种动态解释型的编程语言.Python可以在Windows.UNIX.MAC等多种操作系统上使用,也可以在Java..NET开发平台上使用. [特点] 1 Python使用C语 ...
- python3.7基础教程_关于本教程 |《Python 官方文档:入门教程 3.7.0》| Python 技术论坛...
本文档最新版为 3.8,旧版本可能放弃维护,推荐阅读最新版! Python 入门教程 Python 是一门简单易学且功能强大的编程语言.它拥有高效的高级数据结构,并能够用简单又有效的方式进行面向对象编 ...
- 计算机代码新手入门教程,VJPAGE微简代码生成器新手快速入门教程
VJPAGE微简代码生成器新手快速入门教程: 第一步:新建项目 打开主菜单,文件->新建项目,输入项目名称:"我的项目",选择Jquery作为默认框架.单击确定按钮 第二步: ...
- 家庭网络视频文件共享服务器,【新手入门教程】 高清播放机与家庭网络文件共享设置详解|新手学堂...
高清播放机与家庭网络 文件共享设置详解 cxjt2002' h3 }% ~; e- c9 b- A V 拥有高清网络播放机的用户,经常遇到和希望解决的一个问题就是,如何使高清网络播放机共享浏览播放家 ...
- android 菜鸟面单打印_1.0 Android基础入门教程
本教程于2015年7月开始撰写,耗时半年,总共148节,涵盖了Android基础入门的大部分知识,由于当时能力局限,虽已竭尽全力,但对于一些问题的分析难免有所纰漏,敬请读者海涵!IT技术更新换代很快, ...
- java swt 菜鸟教程_编程基础学习JS的入门教程
将JavaScript 插入网页的方法 使用 插入JavaScript 与在网页中插入CSS的方式相似.使用下面的代码可以在网页中插入JavaScript: ... 其中的...就是代码的内容.Jav ...
最新文章
- CSLA.Net 3.0.5 项目管理示例 名值列表基类、只读基类、业务负责人基类
- SharePoint 2010 技巧系列: 控制Ribbon菜单权限(SiteActions的例子)
- linux打包压缩命令汇总
- MySQL 深入浅出索引(上)
- tf.lookup.StaticHashTable 用法
- 遨游金山网盾?蹦出来有啥用?
- Electron怎样进行渲染进程调试和使用浏览器和VSCode进行调试
- IDEA中配置Python环境并运行
- HDU 4359 Easy Tree DP? 组合数学+动归
- hnu暑期实训之487-3279 字符串处理
- OpenCV基本图形绘制之椭圆
- solrcloud和zookeeper的搭建、使用、心得、教训
- 燃料电池仿真模型燃料电池仿真模型,本模型基于Cruise软件和 Simulink软件共同搭建完成,并基于实际项目搭建,本资料包包含所有源文件
- oneno浏览器插件_谷歌浏览器插件Send to OneNote 让Chrome也拥有OneNote的快捷保存功能...
- O2O(online to offline)营销模式
- Unity 屏幕分辨率的设置
- 七种方法绕过安卓手机锁屏
- linux 脚本加密 shc
- CC00075.bigdatajava——|Java循环结构.V14|——|Java.v14|while循环.v02|实现调和数列累加和|
- 奇兔recovery卡刷教程_奇兔刷机小编为你详解recovery界面中的功能
热门文章
- ubuntu安装atat
- IDEA合并SVN分支代码到主干
- MMKV_MMKV使用教程
- kuangbin 数学训练一 Ekka Dokka
- AD9361 介绍 (上)
- python分布式定时任务_Python 定时任务框架 APScheduler 详解
- python做鼠标自动移动_Python实现鼠标自动在屏幕上随机移动功能
- 已知两点坐标求水平距离_已知两点坐标,两点间距离是多少 ,求那个公式
- idea svn回退版本_mac下使用svn通过终端回退版本到某个版本号 - 博客频道 - CSDN.NET...
- 彻底卸载VS2015的工具及使用方法,亲测有效!!!