nginx初步认识及配置

什么是Nginx

是一个高性能的反向代理服务器

正向代理代理的是客户端

反向代理代理的是服务端

Apache、Tomcat、Nginx

静态web服务器
jsp/servlet服务器 tomcat

安装Nginx

安装依赖

yum install gcc
yum install pcre-devel
yum install zlib zlib-devel
yum install openssl openssl-devel
//一键安装上面四个依赖
yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

下载nginx的tar包

//创建一个文件夹
cd /usr/local
mkdir nginx
cd nginx
//下载tar包
wget http://nginx.org/download/nginx-1.13.7.tar.gz
tar -xvf nginx-1.13.7.tar.g

 

安装nginx

//进入nginx目录
cd /usr/local/nginx
//执行命令
./configure
//执行make命令
make
//执行make install命令
make install

 

//启动命令
安装路径下的/nginx/sbin/nginx
//停止命令
安装路径下的/nginx/sbin/nginx -s stop
或者 : nginx -s quit
//重启命令
安装路径下的/nginx/sbin/nginx -s reload

查看nginx状态(未启动前)

systemctl status nginx.service 

  

启动、停止、重载命令

systemctl start nginx.service

systemctl stop nginx.service

systemctl reload nginx.service

systemctl status nginx.service

查看nginx的状态及进程与端口(启动后)

systemctl status nginx.service

以上nginx就已安装成功了!!!

nginx.conf
虚拟主机配置

配置虚拟主机支持3种方式:基于IP的虚拟主机配置,基于端口的虚拟主机配置,基于域名的虚拟主机配置

a)基于IP的虚拟主机配置

    首先,让我们找到网卡的IP地址。在我的CentOS 7服务器中,我只使用了一个网卡。

    用root特权运行下面的命令:    

ip addr

  示例输出:

如上所见,我的网卡名是enp0s3,ip地址是192.168.6.78。

如你所知,网卡的配置文件存储在 /etc/sysconfig/network-scripts/ 目录下。每个网卡的详细内容将会以不同的名字存储,比如ifcfg-enp0s3

让我们看下ifcfg-enp0s3的细节。

cat /etc/sysconfig/network-scripts/ifcfg-enp0s3

示例输出:

好的,现在我们将在相同的子网中分配多个地址了。

编辑文件 /etc/sysconfig/network-scripts/ifcfg-enp0s3

vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

像下面那样加入额外的IP地址。

如你所见,我已经加了两个IP地址:IPADDR1=”192.168.6.136″ & IPADDR2=”192.168.6.133″

类似地,你可以加入更多的ip地址。

最后,保存并退出文件。重启网络服务来使更改生效。

systemctl restart network

现在,让我们检查是否已经加入了ip地址。

ip addr

如你所见,单个网卡已经有3个ip地址了。

让我们ping一下新增的IP地址:

然后修改nginx配置文件,默认路径是 /usr/local/nginx/nginx-1.13.7/conf/nginx.conf

vi /usr/local/nginx/nginx-1.13.7/conf/nginx.conf
 server {
        listen       8090;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html/server1;
            index  index.html index.htm;
        }
        
    }

 server {
        listen 192.168.6.136:8090;
        server_name  192.168.6.136;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html/server2;
            index  index.html index.htm;
        }
        
    }

 server {
        listen 192.168.6.133:8090;
        server_name  192.168.6.133;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html/server3;
            index  index.html index.htm;
        }
        
    }


    

测试结果

b)基于端口的虚拟主机配置

测试

 

c)基于域名的虚拟主机配置

  修改/etc/hosts文件

nginx.conf配置

测试

 

location

配置语法

location [= | ~* | ^~ ] /uri/ {...}

配置规则

location = /uri 精准匹配
location ^~ /uri 前缀匹配
location ~ /uri
location / 通用匹配

规则的优先级

1 location = /
2 location = /index
3 location ^~ /article/
4 location ^~ /article/files/
5 location ~ \.(gif|png|js|css)$
6 location /
http://192.168.11.154/ 
http://192.168.11.154/index ->2
http://192.168.11.154/article/files/1.txt ->4
http://192.168.11.154/mic.png ->5

1. 精准匹配是优先级最高
2. 普通匹配(最长的匹配)
3. 正则匹配

实际使用建议

location =/ {
 
}
location / {
 
}
location ~* \.(gif|....)${
 
}

Nginx模块

反向代理、email、nginx core。。。

模块分类

1. 核心模块 ngx_http_core_module
2. 标准模块 http模块
3. 第三方模块

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值