Nginx下配置虚拟主机的三种方法


Nginx下,一个server标签就是一个虚拟主机。

1、基于域名的虚拟主机,通过域名来区分虚拟主机——应用:外部网站

2、基于端口的虚拟主机,通过端口来区分虚拟主机——应用:公司内部网站,外部网站的管理后台

3、基于ip的虚拟主机,几乎不用。

基于域名配置虚拟主机步骤:

需要建立/data/www /data/bbs目录,windows本地hosts添加虚拟机ip地址对应的域名解析;对应域名网站目录下新增index.html文件;

nginx.conf配置文件新增如下代码:

server {

  listen 80;

  server_name www.bkjia.com;

  index index.html;

  root /data/www;

}

server {

  listen 80;

  server_name bbs.bkjia.com;

  index index.html;

  root /data/bbs;

}


验证结果,使用curl测试,或者浏览器输入域名访问;

# curl -xlocalhost:80 www.bkjia.com

this is bkjia linux

# curl -xlocalhost:80 bbs.bkjia.com

this is bkjia bbs

基于端口的虚拟主机配置:    使用端口来区分,浏览器使用域名或ip地址:端口号 访问;

server

{

    listen 8000;

    server_name www.bkjia.com;

    root /data/www;

}

server

{

    listen 8001;

    server_name www.bkjia.com;

    root /data/bbs;

}


验证结果,使用curl测试,或者浏览器输入域名访问;

# curl www.bkjia.com:8000

this is bkjia linux

# curl www.bkjia.com:8001

this is bkjia bbs


基于ip地址的虚拟主机配置: 通过ip来访问,需要配置多个ip;

# ifconfig eth0:1 192.168.22.21

server

{

    listen 192.168.20.20:80;

    server_name www.bkjia.com;

    root /data/www;

}

server

{

    listen 192.168.20.21:80;

    server_name www.bkjia.com;

    root /data/bbs;

}

验证结果,使用curl测试,或者浏览器输入域名访问;

# curl 192.168.22.20

this is bkjia linux

# curl 192.168.22.21

this is bkjia bbs

更多Nginx相关教程见以下内容

CentOS 6.2实战部署Nginx+MySQL+PHP

使用Nginx搭建WEB服务器

搭建基于Linux6.3+Nginx1.2+PHP5+MySQL5.5的Web服务器全过程

CentOS 6.3下Nginx性能调优

CentOS 6.3下配置Nginx加载ngx_pagespeed模块

CentOS 6.4安装配置Nginx+Pcre+php-fpm

Nginx安装配置使用详细笔记

Nginx日志过滤 使用ngx_log_if不记录特定日志

Nginx 的详细介绍:请点这里
Nginx 的下载地址:请点这里

本文永久更新链接地址

相关内容