下载和安装
准备环境
1.gcc 安装
安装nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装
2.PCRE pcre-devel 安装
PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库
3.zlib 安装
zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。
4. OpenSSL 安装
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。
下载安装
1.下载压缩包,下载地址:https://nginx.org/en/download.html
2.解压
3.配置
3.1使用默认配置(推荐使用)
3.2使用自定义配置,想支持https的可以使用如下配置,其余配置自定义即可
4.编译安装
查找安装路径(默认在/usr/local下)
启动和关闭
检查语法是否有错误,进入nginx的sbin目录下
如果不想每次到nginx的sbin目录下,可以设置软链接
这个在命令行中就直接支持nginx命令了
nginx的组成
nginx二进制可执行文件
由各模块编译出的一个文件
nginx.conf配置文件
控制nginx的行为
access.log访问日志
记录每一条http请求信息
error.log错误日志
定位问题
http配置的指令块
http
server
location
upstream
nginx负载均衡
轮循
优点:实现简单
缺点:不考虑每台服务器处理能力
权重
优点:考虑了每台服务器处理能力的不同
8080访问的概率是9080的1.5倍
ip hash
优点:能实现同一个用户访问同一个服务器
缺点:根据ip hash不一定平均
url hash(第三方)
优点:能实现同一个服务访问同一个服务器
缺点:根据url hash分配请求会不平均,请求频繁的url会请求到同一个服务器上
fair(第三方)
特点:按后端服务器的响应时间来分配请求,响应时间短的优先分配
参考博客
nginx简介
修改端口nginx/conf/nginx.conf将http->server->listen中的80改为81