zoukankan      html  css  js  c++  java
  • Apache下配置虚拟主机总结

    如果一台服务器想要挂多个网站,就需要为该服务器配置虚拟主机

    配置方法有两种

        1.如果每个网站的IP地址是不同的那么就是基于IP的虚拟主机    

        2.如果每个网站的IP地址相同,访问的域名不同则为基于主机名

    1.基于IP的虚拟主机步骤

    Window下设置

    步骤

    1.创建两个网站目录:test1site1,testsite2里面各创建一个index.html 然后将网站放在apache网站htdocs目录下

    2.创建虚拟IP:右击网上邻居---属性------选择IP4-----属性----IP地址不能自动获取,单击高级-----在IP地址中添加IP

        

    3.设置系统hosts表添加IP地址和域名转换: hosts表位置:C:WindowsSystem32driversetc 


    4.修改apache配置文件htdocs: 将Include conf/extra/httpd-vhosts.conf前面的#号去掉

    5.修改httpd-vhosts.conf:

    <VirtualHost 192.168.1.21:80>

        ServerAdmin www.test1.com

            DocumentRoot "D:/PHP/Apache/htdocs/testSite1

           <Directory "D:/PHP/Apache/htdocs/testSite1">//修改权限

             Options Indexes FollowSymLinks

             AllowOverride None

             Order allow,deny

             Allow from all

          </Directory>   

    </VirtualHost>

    <VirtualHost 192.168.1.22:80>

        ServerAdmin www.test2.com

        DocumentRoot "D:/PHP/Apache/htdocs/testSite2"

        <Directory "D:/PHP/Apache/htdocs/testSite2">

     Options Indexes FollowSymLinks

     AllowOverride None

     Order allow,deny

     Allow from all

        </Directory>   

    </VirtualHost>

     

    6.重启apache:输入www.test1.com测试

     

    在linux下

    linux下面创建IP地址的方法


    Linux的hosts文件在 /etc/目录下 可以用VI编辑器编辑

    其他的均相同 

     

    2.基于主机名的虚拟主机步骤

    步骤:

    基于主机名不需要添加IP地址但仍需要添加IP地址与域名对应关系设置成:

    修改apache配置文件htdocs: 将Include conf/extra/httpd-vhosts.conf前面的#号去掉

    #必须指定服务器IP地址(和可能端口)来使主机接受请求,这里使用*代表所有地址

    NameVirtualHost *:80

    <VirtualHost *:80>

        #与全局的ServerName参数相同

        ServerName *

        #与全局的DocumentRoot参数相同

        DocumentRoot D:/PHP/Apache/docs/  

    </VirtualHost>

    <VirtualHost *:80>

        ServerAdmin www.test1.com

        DocumentRoot "D:/PHP/Apache/htdocs/testSite1"

        <Directory "D:/PHP/Apache/htdocs/testSite1">

     Options Indexes FollowSymLinks

     AllowOverride None

     Order allow,deny

     Allow from all

        </Directory>   

    </VirtualHost>

    <VirtualHost *:80>

        ServerAdmin www.test2.com

        DocumentRoot "D:/PHP/Apache/htdocs/testSite2"

        <Directory "D:/PHP/Apache/htdocs/testSite2">

     Options Indexes FollowSymLinks

     AllowOverride None

     Order allow,deny

     Allow from all

        </Directory>   

    </VirtualHost>

    还有一种方法通过同一IP地址 不同端口访问

    如果我们想让testsite1用80端口,testsite2用81 端口大家还可以在htdocs 中添加listen 80  listen 81

    然后在 httpd-vhosts.conf 设置

    <VirtualHost 192.168.0.20:80>

        ServerAdmin www.test1.com

        DocumentRoot "D:/PHP/Apache/htdocs/testSite1"

        <Directory "D:/PHP/Apache/htdocs/testSite1">

     Options Indexes FollowSymLinks

     AllowOverride None

     Order allow,deny

     Allow from all

        </Directory>   

    </VirtualHost>

    <VirtualHost 192.168.0.20:81>

        ServerAdmin www.test2.com

        DocumentRoot "D:/PHP/Apache/htdocs/testSite2"

        <Directory "D:/PHP/Apache/htdocs/testSite2">

     Options Indexes FollowSymLinks

     AllowOverride None

     Order allow,deny

     Allow from all

        </Directory>   

    </VirtualHost>

    这样我们就可以用192.168.0.20:81访问testsite2了。 如果想在internet访问IP地址必须是静态的

  • 相关阅读:
    iOS 10 的杂碎资料
    MAC SVN Merge 操作
    iOS中AFNetworking2.0和AFNetworking3.0 的HTTPS的配置
    从字符串中获取指定字符内的内容
    判断是否是是全汉字、全字母、全数字、数字和字母等
    解析URL 获取某一个参数值
    长按TextField或TextView显示中文的粘贴复制
    TextField和TextView的限制输入长度
    抢购、距活动结束,剩余时间倒计时。
    Cell右滑 多个编辑选项栏
  • 原文地址:https://www.cnblogs.com/hemei/p/3710359.html
Copyright © 2011-2022 走看看