nginx的虚拟主机配置

    xiaoxiao2021-03-26  62

    1)基于ip   2)基于域名   3)基于端口

    一个最简单的虚拟主机的配置:

    http{   listen  80;   server_name nj.cc;   access.log  /usr/local/var/logs/nginx/access.log;     location{       index index.htm index.html index.php;       root /www/php;  }}

    ### 基于IP的虚拟主机的配置

    Linux freeBSD等都允许自己添加IP别名,设置IP别名只需要配置系统上的网络接口,让它监听额外的IP地址,在Linux系统上可以使用ifconfig或者route添加ip别名.

    eg: ifconfig 会显示下边本地ip信息,其中eth0是本机ip  

    lo是本地回环设备,默认永不宕掉,它的主要作用有两个:

    1)测试本机网络设置,能ping通127.0.0.1 说明本机的网卡和ip协议都按照正确

    2)某些server/client的应用程序再运行时必须调用服务器上的资源,一般要指定server的ip,当该程序要在同一台机器上运行且没有别的server时,可以把server装在本机,server的ip设置为127.0.0.1

    eg:使用ifconfig和route命令来添加2个虚拟ip  192.168.1.1  192.168.1.2

    /sbin/ifcofig eth0:1 192.168.1.1  broadcast  192.168.1.255 netmask 255.255.255.0 up/sbin/route  add -host 192.168.1.1  dev  eth0:1/sbin/ifcofig eth0:1 192.168.1.2  broadcast  192.168.1.255 netmask 255.255.255.0 up/sbin/route  add -host 192.168.1.2  dev  eth0:1

    此时,若可以使用ping命令ping通,则配置无误,但是使用命令设置的ip别名在服务器重启后会失效,可以

    将上边的代码添加到 /etc/rc.local  中,使之永久有效

    基于ip的虚拟主机配置

    ##基于ip的虚拟主机配置http{    ## 第一个虚拟主机    server{        #监听的ip和端口        listen 192.168.8.43:80;        #主机名称        server_name 192.168.8.43;        #访问日志的存放路径        access_log logs/server1.access.log combined;        location /{            #默认首页文件,从左到有,若找不到index.html就找index.htm..            index index.html index.htm            #网页存放目录            root /data0/htdocs/server1;        }    }    ##第二个虚拟主机    server{       listen 192.168.8.44:80;       server_name 192.168.8.44;       access_log logs/server2.access.log combined;       location /{           index index.html index.htm           root /data0/htdocs/server2;       }    }

    基于域名的虚拟主机配置

    ##基于域名的虚拟主机配置,也是比较常用的一种虚拟方式http{    ## 第一个虚拟主机    server{        #监听的ip和端口        listen 80;        #主机名称        server_name nj1.com;        #访问日志的存放路径        access_log logs/nj1.com.access.log combined;        location /{            #默认首页文件,从左到有,若找不到index.html就找index.htm..            index index.html index.htm            #网页存放目录            root /data0/htdocs/nj1;        }    }    ##第二个虚拟主机    server{       listen 80;       server_name nj2;       access_log logs/nj2.com.access.log combined;       location /{           index index.html index.htm           root /data0/htdocs/nj2;       }    }

    转载请注明原文地址: https://ju.6miu.com/read-660840.html

    最新回复(0)