一、安装
方式1:yum安装
1. yum install nginx -y 安装nginx
优点:简单方便易操作,还会自动添加环境变量(软连接)
缺陷:安装时会默认装到不同的文件下下面,文件存储路径不易找到,死板生硬不灵活
2. 启动nginx
注意:因为yum安装自动添加了软连接,所以,可以直接启动nginx,
service nginx start:开启nginx服务
service nginx stop:关闭nginx服务
service nginx restart:重启nginx服务
方式2:编译安装
1.准备安装环境
一. 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 gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel openssl openssl-devel -y
2. 安装并启动nginx
1. cd /opt/,并在opt文件夹下面新建文件夹:nginx1-12 2.下载源码包 wget -c https://nginx.org/download/nginx-1.12.0.tar.gz 2.解压缩源码 出现nginx-1.12.0文件夹 tar -zxvf nginx-1.12.0.tar.gz 之后进入nginx-1.12.0文件夹 3.配置,编译安装 可指定文件安装路径 ./configure --prefix=/opt/nginx1-12/ --with-http_ssl_module --with-http_stub_status_module make && make install 4.启动nginx,进入sbin目录,找到nginx启动命令 cd sbin ./nginx #启动 ./nginx -s stop #关闭 ./nginx -s reload #重新加载
5.检测nginx是否启动:
netstat -tunlp |grep 80
# 如果不能启动,请关闭防火墙
补充:防火墙
1. 永久关性闭/开启防火墙:
chkconfig iptables off:永久关闭
chkconfig iptables on:永久开启
2. 暂时性关闭/开启防护墙、
说明: 即时生效,重启后失效
service iptables stop 或 /etc/init.d/iptables stop 或 iptables -F :暂停防火墙服务
service iptables start 或 /etc/init.d/iptables start :开始防火墙服务
3. 查看防火墙的状态
service iptables status 或者 /etc/init.d/iptables status
yum安装的nginx的文件所在的路径:
nginx:/usr/share/nginx/html/ html文件所在路径
/etc/nginx/conf.d/ 主配置文件 所在路径
vim /etc/nginx/nginx.conf.default 可以编辑下面这样子的路由,进行路由的配置
location /{ root html; #这里是默认的站点html文件夹,也就是 /opt/nginx1-12/html/文件夹下的内容 index index.html index.htm; #站点首页文件名是index.html }
nginx的功能:
1. 反向代理:
区别正反向代理:
正向代理:某些情况下,代理我们用户去访问服务器,需要用户手动的设置代理服务器的ip和端口号。
反向代理:是用来代理服务器的,代理我们要访问的目标服务器。代理服务器接受请求,然后将请求转发给内部网络的服务器(集群化),并将从服务器上得到的结果返回给客户端,此时代理服务器对外就表现为一个服务器。
Nginx在反向代理上,提供灵活的功能,可以根据不同的正则采用不同的转发策略,如图设置好后不同的请求就可以走不同的服务器。
2 . web-server:虚拟主机:当一台部署单个应用的web服务器资源过剩时,可以在该服务器上部署多个应用,
3. cache server,充当HTTP静态服务器,用于缓存图片,文件等静态资源。
4. 负载均衡:七层负载均衡,可以感知后端应用服务器的可用性
反向代理的参数: