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

    需求:

      在同一台服务器上架设多个web站点,每个站点拥有独立的域名,但共用相同ip

    实现:

      根据需求分析,则通过apache的基于主机名的虚拟主机(一个IP地址,多个网站)方式实现。

      术语"虚拟主机"是指在一个机器上运行多个网站(比如:www.company1.comwww.company2.com)。如果每个网站拥有不同的IP地址,则虚拟主机可以是"基于IP"的;如果只有一个IP地址,也可以是"基于主机名"的,其实现对最终用户是透明的。

      

      step 1 :指定服务器IP地址(和可能的端口)来使主机接受请求
      NameVirtualHost指令配置
      如果服务器上所有的IP地址都会用到,你可以用"*"作为NameVirtualHost的参数

      step 2 :每个虚拟主机建立<VirtualHost>段
      <VirtualHost>的参数与NameVirtualHost的参数必须是一样的
      <VirtualHost>中至少包含ServerName和DocumentRoot
      ServerName指令来指定伺服哪个主机 
      DocumentRoot指令来说明这个主机的内容位于文件系统的什么地方  

       step 3 :取消中心主机(Mainhost)
       如果你想在现有的web服务器上增加虚拟主机,你必须也为现存的主机建造一个<VirtualHost>定义块;
       这个虚拟主机中ServerName和DocumentRoot所包含的内容应该与全局的ServerName和DocumentRoot保持一致;
       还要把这个虚拟主机放在配置文件的最前面,来让它扮演默认主机的角色。 

      例:

    NameVirtualHost *:80
    
    #默认主机,如果直接使用ip或者www.domain.tld都能访问
    <VirtualHost *:80>
    ServerName www.domain.tld
    ServerAlias domain.tld *.domain.tld
    DocumentRoot /www/domain
    </VirtualHost>
    
    #使用www.otherdomain.tld能访问
    <VirtualHost *:80>
    ServerName www.otherdomain.tld
    DocumentRoot /www/otherdomain
    </VirtualHost>

    相关问题:

      1、开始配置时,自己胡乱的copy,出现了各种问题,然后就是有一阵的胡乱copy,最终还是不能解决。

      解决:静下心来,看看比较官方全面的文档,比如Apache HTTP Server Version 2.2 文档,很多东西就引刃而解了

      2、apache重启遇到Could not reliably determine the server's fully qualified domain name

      解决:在/etc/httpd/conf/httpd.conf中修改ServerName localhost:80(其他你自己的域名也行)

      3、所有的请求相应都的是配置中的第一个与虚拟主机的(www.domain.tld或www.otherdomain.tld都给解析的是/www/domain下的站点)

      解决:原来是没有设置NameVirtualHost 造成的,一定别忘了了设置NameVirtualHost

      4、访问虚拟主机配置的第二个域名www.otherdomain.tld时老是去跳转到apache的默认页去

      开始以为是虚拟主机的配置原因,查了很久没能查出具体原因,后面用firebu查看了网络请求,看到了一个403

      

       解决:原来是centos中apache将403给我转到了一个它的一个默认页面,还以为是我的配置问题呢,然后给以授权,问题解决

    参考:

      [1]  Apache虚拟主机文档

      [2]  基于主机名的虚拟主机

    知识共享许可协议
    作品Tim Zhang创作,采用知识共享署名 3.0 中国大陆许可协议进行许可。 。
  • 相关阅读:
    element-ui 后台问题
    element-ui 使用:rules对表单字段进行验证
    扫码枪 移动端监听
    前端好用工具介绍——wulihub
    移动端 扫描枪输入不弹出键盘
    移动端 input输入实时监听查询数据渲染
    新老系统统一认证解决方案
    转 高性能IO模型浅析
    数据库备份方案
    软件开发阶段数据库升级维护策略
  • 原文地址:https://www.cnblogs.com/ccdc/p/2469364.html
Copyright © 2011-2022 走看看