Nginx虚拟主机

  在实际环境中单台Nginx WEB服务器同时会配置N个网站,也可称之为配置N个虚拟域名的主机,即多个域名对应同一个80端 口。 每一个虚拟主机能够是一个独立网站、能够具备独立域名,同一台物理机上面的虚拟主机相互之间是独立。
虚拟主机的类型
基于IP的虚拟主机html

  能够在一块物理网卡上绑定多个IP地址。这样就可以在使用单一网卡的同一个服务器上运行多个基于IP的虚拟主 机。设置IP别名也很是容易,只须配置系统上的网络接口,让它监听额外的IP地址。
基于端口的虚拟主机
  基于端口的虚拟主机配置,使用端口来区分,浏览器使用域名或ip地址:端口号访问。
基于域名的虚拟主机
  基于域名的虚拟主机是最多见的一种虚拟主机。只需配置你的DNS服务器,将每一个主机名映射到正确的IP地址,然 后配置Nginx服务器,令其识别不一样的主机名就能够了。这种虚拟主机技术,使不少虚拟主机能够共享同一个IP地 址,有效解决了IP地址不足的问题。因此,若是没有特殊要求使你必须用一个基于IP的虚拟主机,最好仍是使用基 于域名的虚拟主机。nginx


nginx.conf 配置文件默认配置块浏览器

nginx 默认配置块 配置的括号都是成对出现,丢失会报错。缓存

events {} #内核的参数服务器

http   {} #http 网站配置参数,能够嵌套多个server,配置代理,缓存,日志定义等绝大多数功能和第三方模块的 配置  网络

server {} #被包含在http段中,用来配置虚拟主机,每个server段表明一个虚拟主机  app

location {} #被包含在server段中,用来匹配域名请求和调用第三方模块测试

upstream {} #被包含在http段中,转发的配网站

 

配置基于域名的虚拟主机3d

(1)配置nginx 配置文件(每一个配置项后面都有一个;号,不可丢失,不然报错)

[root@localhost conf]# cat nginx.conf

worker_processes 1;

events { #内核配置和链接数配置

  worker_connections 1024;

}

http { #http网站段,能够嵌套多个server,配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置

  include mime.types;

  default_type application/octet-stream;

  log_format main '$remote_addr - $remote_user [$time_local] "$request" '

           '$status $body_bytes_sent "$http_referer" '

           '"$http_user_agent" "$http_x_forwarded_for"';

  sendfile on;

  keepalive_timeout 65;

  server { #被包含在http段中,用来配置虚拟主机,每个server段表明一个虚拟主机

     listen 80; #端口

     server_name www.test1.com; #域名,能够配置多个

     access_log logs/test1.com.log main; #网站日志

  location / { #被包含在server段中,用来匹配域名请求和调用第三方模块

    root html/test1; #用来存储网站网页

    index index.html index.htm; #网站默认打开的索引页(首页)

  }

}

  server {

    listen 80;

    server_name www.test2.com;

     access_log logs/test2.com.log main;

    location / {

      root html/test2;

      index index.html index.htm;

    }

  }

}

检查nginx 配置文件是否正确

/usr/local/nginx/sbin/nginx -t

 

(2)建立www.test1.com和www.test2.com网页访问目录

[root@localhost nginx]# mkdir /usr/local/nginx/html/test{1,2}

[root@localhost nginx]# echo "www.test1.com" > /usr/local/nginx/html/test1/index.html
[root@localhost nginx]# echo "www.test2.com" > /usr/local/nginx/html/test2/index.html

(3)从新启动nginx

[root@localhost nginx]# /usr/local/nginx/sbin/nginx -s reload

(4)将主机映射写入hosts文件

(5)Windows测试访问

相关文章
相关标签/搜索