Nginx是一个HTTP的web服务器,可以将服务器上的静态文件(如html、图片等)通过HTTP协议返回给浏览器客户端。

一、静态网站的部署

 将/资料/静态页面/index目录上传到服务器的/usr/local/nginx下即可访问。

 使用editplus将内容上传到服务器上。

 

tp6 nginx 静态 nginx 静态网站_nginx

 上传完成打开/usr/local/nginx/index可以发现有index.html文件

 

tp6 nginx 静态 nginx 静态网站_nginx_02

 更改nginx.conf配置文件

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

 更改完需要重启nginx,到/usr/local/nginx/sbin目录下执行命令重启

./nginx -s reload

 浏览器重新访问192.168.240.128

 

tp6 nginx 静态 nginx 静态网站_html_03

二、配置虚拟主机

在同一个nginx下部署多个项目。

 1. 端口绑定

  a. 更换端口号

server {
        listen       81;
        server_name  localhost;
 
        location / {
            root   index;
            index  index.html index.htm;
        } 
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
}

   重启nginx,浏览器访问192.168.240.128,可以看到默认端口号80不能访问到。

   

tp6 nginx 静态 nginx 静态网站_nginx_04

    浏览器访问192.168.240.128:81

   

tp6 nginx 静态 nginx 静态网站_服务器_05

  b. 再增加一个server

   将/资料/静态页面/regist目录上传到服务器的/usr/local/nginx下  

   

tp6 nginx 静态 nginx 静态网站_nginx_06

   

tp6 nginx 静态 nginx 静态网站_tp6 nginx 静态_07

    新增一个server

server {
        listen       82;
        server_name  localhost;
 
        location / {
            root   regist;
            index  regist.html;
        } 
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
}

   重启nginx,浏览器访问192.168.240.128:81能正常访问到;浏览器访问192.168.240.128:82

   

tp6 nginx 静态 nginx 静态网站_服务器_08

    这就相当于在同一个nginx下虚拟出来了两个主机,部署了两个项目。这就是端口号实现虚拟主机的配置。

 2. 域名绑定

  域名与IP绑定:一个域名对应一个 ip 地址,一个 ip 地址可以被多个域名绑定。(比如说,在浏览器输入https://www.baidu.com,首先找本地hosts文件,找到www.baidu.com对应的ip地址返回,然后再通过80端口访问服务器。如果hosts文件没有,那么需要通过dns服务器去找对应的域名和ip的对应关系)

  本地测试可以修改hosts文件(C:\Windows\System32\drivers\etc),可以配置域名和 ip 的映射关系,如果 hosts 文件中配置了域名和 ip 的对应关系,不需要走dns 服务器。

192.168.240.128 www.hmtravel.com
192.168.240.128 regist.hmtravel.com

  这时候,浏览器通过访问regist.hmtravel.com:82也能访问到注册页面。

  修改nginx配置文件

server {
        listen       80;
        server_name  www.hmtravel.com;
 
        location / {
            root   index;
            index  index.html index.htm;
        } 
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
}

server {
        listen       80;
        server_name  regist.hmtravel.com;
 
        location / {
            root   regist;
            index  regist.html index.htm;
        } 
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
}

  重启nginx,浏览器访问regist.hmtravel.com可以访问到注册页面;浏览器访问www.hmtravel.com可以访问到首页。