Nginx——虚拟主机配置

  • 基于域名的虚拟主机
  • 基于端口的虚拟主机
  • 基于IP的虚拟主机
    nginx的主配置文件/etc/nginx/nginx.conf,当我们配置虚拟主机时,就可以通过该文件配置。

1、基于域名的虚拟主机配置

Nginx——虚拟主机配置_第1张图片
image.png

在上面的配置中,设定了两个server区块,每个区块对应一个虚拟主机:

  • www.luo.com
    当用户访问www.luo.com这个站点时,访问的是/usr/share/nginx/html/这个目录的资源

  • bbs.luo.com
    当用户访问bbs.luo.com这个站点时,访问的是/usr/share/nginx/bbs/这个目录的资源

[root@CentOS7A nginx]#vim /etc/nginx/nginx.conf
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  www.luo.com;
        location / {
            root   /usr/share/nginx/html/;
            index  index.html index.htm;
        }
    }
    server {
        listen 80;
        server_name  bbs.luo.com;
        location / {
            root   /usr/share/nginx/bbs/;
            index  index.html index.htm;
        }
    }
}
[root@CentOS7A nginx]#echo www in Nginx >  /usr/share/nginx/html/index.html 
[root@CentOS7A nginx]#echo bbs in Nginx >  /usr/share/nginx/bbs/index.html 

在window上做好hosts解析后,测试如下:

Nginx——虚拟主机配置_第2张图片
image.png

二、基于端口的虚拟主机配置

在上面的配置基础上,我们略做改动:


Nginx——虚拟主机配置_第3张图片
image.png
[root@CentOS7A nginx]#mkdir  /usr/share/nginx/8080
[root@CentOS7A nginx]#echo port 8080 in Nginx >  /usr/share/nginx/8080/index.html
[root@CentOS7A nginx]#nginx -s reload

  • www.luo.com:80
    当用户访问www.luo.com:80时,访问的是/usr/share/nginx/html/目录下的资源。其中":80"可以省略。
  • www.luo.com:8080
    当用户访问www.luo.com:8080时,访问的是/usr/share/nginx/8080目录下的资源
Nginx——虚拟主机配置_第4张图片
image.png

三、基于IP的虚拟主机

基于IP的虚拟主机用得比较少。当主机拥有多个IP时,修改server区块的listen ip:port即可。

你可能感兴趣的:(Nginx——虚拟主机配置)