### Nginx是什么?
Nginx是俄罗斯人编写的十分轻量级的HTTP和反向代理服务器。发音:"engine X"
### Nginx能干什么?
#### (1)Http反向代理
Nginx 支持正则表达式以区分静态资源或者动态资源,提供性能稳定,并且能够提供配置灵活的转发功能。
,其中动态资源可以进一步转发给后端的 Proxy Server, 而静态资源则可以在 Nginx 层面使用本地缓存策略或者重定向(类 CDN)到其他 Nginx 上。
#### (2)负载均衡
目前Nginx支持以下几种的负载均衡的策略:
1,round-robin(轮询,默认策略)
每个请求轮询发送到不同的服务器上面,如果某台服务宕机了,nginx会自动剔除掉,并把请求给转发到正常的服务器上面。
2,least_conn
最少连接数
3,least_time
最少时间花费,nginx会选择延迟最低的服务器。header表示是计算从后台返回的第一个字节,last_byte计算的是从后台返回的所有数据时间
4,weight
如果服务器性能本身不太均衡,通过配置权重让资源配置更高的机器得到更多的流量
5,ip_hash
使用请求的ip的hash结果分配,这样每个用户会被分配在同一个后台服务器上面
6,fair(第三方)
按后端服务器的响应时间来分配请求,响应时间短的优先分配
github地址:https://github.com/gnosek/nginx-upstream-fair
7,url_hash(第三方)
基于url的hash进行分配
此外还有一些基于一致性hash和tcp负载的功能,感兴趣的朋友可以自己查阅资料。
#### (3)web缓存
Nginx可以对不同文件做不同的缓存处理,配置灵活,并且支持FastCGI_Cache.
尤其是前端开发的项目中,一些js,css,html,图片,视频,音频等资源可以作为静态资源发布,由nginx缓存以提升响应速度。
#### (4)其他
此外使用Nginx可以做一个简单的http的下载服务器,只要配置开启目录浏览功能即可实现。还有一些权限拦截功能,也可以使用Nginx来完成。
### Nginx的安装
默认的centos是没有nginx的yum源,需要执行下面的命令:
````
rpm -Uvh --force http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
yum install -y nginx
````
安装完成后,一些默认的目录如下:
````
网站默认站点配置的首页
/usr/share/nginx/html
默认的nginx的配置目录
/etc/nginx/conf.d/
默认的目录下面有一个配置模板,如果不需要,可以改后缀名不为conf ,然后重新reload即可
/etc/nginx/conf.d/default.conf
Nginx全局配置,主要的配置选项
/etc/nginx/nginx.conf
默认的访问log
/var/log/nginx/access.log
默认的错误log
/var/log/nginx/error.log
默认的进程id
/var/run/nginx.pid
````
一些常用命令:
````
nginx -V 2>&1 | tr ' ' '\n' 查看安装的插件
nginx -v 看版本
nginx 启动
nginx -s stop 快速停止
nginx -s reload 重新加载
nginx -t 查看配置文件是否有错误
````
执行nginx启动之后,访问ip的80端口,如果能看见下面的字样,就代表成功:
````
Welcome to nginx!
If you see this page, the nginx web server is successfully installed and working. Further configuration is required.
For online documentation and support please refer to nginx.org.
Commercial support is available at nginx.com.
Thank you for using nginx.
````
最后再介绍一个实用的功能,就是编辑nginx的conf文件默认是黑白颜色的,对视觉极其不友好,所以我们需要安装一个支持nginx的conf文件语法高亮的插件:
````
wget http://www.vim.org/scripts/download_script.php?src_id=14376 -O nginx.vim
mkdir -p ~/.vim/syntax
mv nginx.vim ~/.vim/syntax/
vim ~/.vim/filetype.vim
粘贴下面的内容到里面去:
au BufRead,BufNewFile /etc/nginx/*,/usr/local/nginx/conf/* if &ft == '' | setfiletype nginx | endif
````
最后退出终端,重新登录即可
有什么问题可以扫码关注微信公众号:我是攻城师(woshigcs),在后台留言咨询。 技术债不能欠,健康债更不能欠, 求道之路,与君同行。
- 大小: 39.8 KB
分享到:
相关推荐
本文将从基本概念开始,详细介绍 Nginx 的安装、配置和使用,旨在帮助读者快速掌握 Nginx 的基础知识和实践经验。 Nginx 介绍 Nginx 是一个开源、高性能、高可靠的 Web 和反向代理服务器,可以热部署,支持热更新...
**Nginx 入门到精通** Nginx 是一款高性能、轻量级的网络服务器,广泛应用于Web服务器和反向代理服务器。它的主要特点包括高并发处理能力、低内存占用以及灵活的配置机制,使其成为众多企业和开发者的选择。本教程...
Nginx入门&进阶.pdf
【nginx入门】nginx反向代理与负载均衡教程
nginx入门讲解 安装和配置 需要讲课入门PPT可以参考下 本人刚刚接触nginx,做的也不太好 不喜勿喷
nginx入门nginx入门nginx入门nginx入门nginx入门nginx入门nginx入门nginx入门nginx入门nginx入门nginx入门
Nginx开发从入门到精通 中文版,入门到精通 Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理...
### Nginx 入门指南 #### 一、Nginx 安装与配置 ...通过以上介绍,我们可以了解到 Nginx 的安装、启动、信号控制及配置等基本操作。这些知识对于初学者来说是非常重要的,也是进一步深入学习 Nginx 的基础。
### Nginx 入门案例详解 #### 一、Nginx 反向代理与负载均衡简介 Nginx 是一款高性能的HTTP服务器和反向代理服务器,它以其稳定性、丰富的功能集、简单的配置文件和较低的内存消耗而闻名。在实际应用中,Nginx 常...
**Nginx 入门到实践:深入了解 Nginx 中间件** Nginx 是一款高性能的 HTTP 和反向代理服务器,广泛应用于互联网行业的网站部署和负载均衡。它以其轻量级、高并发处理能力而闻名,同时也常作为中间件在分布式系统中...
01.Nginx快速入门 02.Nginx常用模块 03.Nginx提供静态资源WEB服务 04.Nginx提供代理服务 05.Nginx提供负载均衡 06.Nginx提供ProxyCache缓存服务 07.Nginx Rewrite跳转规则与实践 08.Nginx构建Https加密传输网站(基于...
Nginx教程从入门到精通Nginx教程从入门到精通Nginx教程从入门到精通Nginx教程从入门到精通Nginx教程从入门到精通Nginx教程从入门到精通Nginx教程从入门到精通Nginx教程从入门到精通
nginx常用功能入门教程
在Linux系统中安装Nginx,通常需要通过包管理器如apt(对于Ubuntu/Debian)或yum(对于CentOS/RHEL)。首先,你需要更新系统的软件包列表,然后安装Nginx: ```bash # 对于Ubuntu/Debian sudo apt update sudo apt ...
读者将学习如何安装Nginx,创建基本的配置文件,以及如何配置服务器块来托管静态文件、动态内容和反向代理。书中会有大量实例展示如何编写和调试配置文件,确保服务器正确运行。 Nginx的模块化设计是其强大之处。...
Nginx 安装与配置** - **Windows 安装**:下载安装包,解压并运行 nginx.exe,默认监听 80 端口。 - **目录结构**:包括 conf 配置文件、docs 文档、html 静态文件、logs 日志和 temp 临时文件。 **3. 配置文件...
### Nginx模块开发入门详解 #### Nginx概述与市场地位 Nginx作为一款高性能的HTTP服务器和反向代理服务器,在全球范围内享有极高的声誉。根据权威机构W3Techs的数据,截至某一时间点,全球排名前100万的网站中,...
nginx 入门示例配置