Nginx三大功能——HTTP服务器

Nginx三大功能——HTTP服务器

Nginx三大功能——HTTP服务器

Nginx是一款优秀的静态服务器,在做Javaweb开发时,经常将它用来存放静态资源,一般是图片资源,所以又将Nginx称为图片服务器,然后将图片地址存入关系型数据库(一般为Mysql)中。关于Nginx作为静态服务器的配置,且看下面。

配置Nginx——修改nginx安装目录/conf/nginx.conf(这里是/usr/local/nginx/conf/nginx.conf文件),如下:

server {

        listen       81; # 监听的端口

        server_name  localhost; # 域名或ip

        location / {      # 访问路径配置

            root   /usr/local/nginx/index;# 根目录

            index  index.html index.htm; # 默认首页

        }

        error_page   500 502 503 504  /50x.html;      # 错误页面

        location = /50x.html {

            root   /usr/local/nginx/html;

        }

    }

现在我们来对这段代码解释,实际上,对于Nginx做服务器,和其他服务器一样,只要搞清“ ip:port 页面 后台目录 ”三个东西就好了:

指定ip:port是 localhost:81,我们直接在linux计算机的浏览器上输入localhost:81,显示的是index.html/index.htm界面,对应后台目录是nginx安装目录/index目录(如usr/local/nginx/index);

我们直接在linux计算机的浏览器上输入localhost:81/50x.html,对应后台目录是nginx安装目录/html目录(如usr/local/nginx/html)。

关于匹配关系,上面的配置中 / 表示可以匹配所有,/50x.html 表示可以匹配50x.html,优先级关系是优先匹配长的,

如localhost:81/50x.html 同时满足 / 和 /50x.html,由于优先匹配长的,所以要导向到 html 目录。

如localhost:81/xxx.html 仅满足于 / ,所以导向到index目录。

关于页面优先关系, index index.html index.htm;优先关系是从左到右,有index.html就显示index.html,没有就显示index.htm。

三、Nginx三大功能——虚拟主机

3.1 虚拟主机

什么是虚拟主机?

虚拟主机是一种特殊的软硬件技术,它可以将网络上的每一台计算机分成多个虚拟主机,每个虚拟主机可以独立对外提供www服务,这样就可以实现一台主机对外提供多个web服务,每个虚拟主机之间是独立的,互不影响的(看不懂,没关系,一点一点往下面看)。

通过nginx可以实现虚拟主机的配置,nginx支持三种类型的虚拟主机配置,分别是:1、基于ip的虚拟主机, 2、基于端口的虚拟主机,3、基于域名的虚拟主机

Nginx三大功能——HTTP服务器

3.2 Nginx配置文件的结构

......

events {

    .......

}

http{

   .......

   server{

.......

}

   server{

.......

}

 

}

上述代码中,每个server就是一个虚拟主机。 实际上,就是同一机器,用不同的目录虚拟成不同的访问入口。其中,因ip不同形成的不同的访问入口称为“基于ip的虚拟主机”,因端口不同形成的不同的访问入口称为“基于端口的虚拟主机”,因域名不同形成的不同的访问入口称为“基于域名的虚拟主机”。