对于我们苦逼的草根站长来说,在资金有限的情况下,同一个主机放置多个站点是个非常不错的方法。ITLee由于资金薄弱,只能用的起vps主机,为了让有限的资源满足我们无限的折腾,今天来跟大家说一下,怎样实现在一个apache服务器上放置多个站点的问题。当然这些个小儿科只是针对入门级的人员来说的,各位高手们休要拍砖!
      一个ip地址放置多个站点,简单的来说呢,就是通过apache的虚拟主机进行实现的。下面我们看一下具体的操作步骤:

1.找到apache配置文件:httpd.conf

      关于apache的配置文件,不同的linux主机可能放置在不同的地方,尤其对于那些编译安装的环境来说,放置的位置就更加不固定了。ITLee的环境是通过yum的方式进行安装的,linux版本centos5.6,安装完成后httpd.conf处于/etc/httpd/conf/这个目录下,大家可以作为参考,找一下自己的apache配置文件。

2.修改配置文件,添加虚拟主机

      用vim打开配置文件,查找如下的配置信息:

#<VirtualHost *:80>
#    ServerAdmin webmaster@dummy-host.example.com
#    DocumentRoot /www/docs/dummy-host.example.com
#    ServerName dummy-host.example.com
#    ErrorLog logs/dummy-host.example.com-error_log
#    CustomLog logs/dummy-host.example.com-access_log common
#</VirtualHost>

      上面的这段配置信息就是apache为我们提供的添加虚拟主机的模板,你可以选择在原来的基础上进行修改,也可以安装这个模板自己添加,这里ITLee采用后一种方式,我们在这段配置信息的后面,通常也是整个文件的末尾处添加如下信息:

<VirtualHost *:80>
#    ServerAdmin webmaster@dummy-host.example.com
     DocumentRoot /var/www/web/wordpress
     ServerName www.nanrenbuhuai.com
     ErrorLog logs/www.nanrenbuhuai.com-error_log
     CustomLog logs/www.nanrenbuhuai.com-access_log common
</VirtualHost>
<VirtualHost *:80>
#    ServerAdmin webmaster@dummy-host.example.com
     DocumentRoot /var/www/web/itlee
     ServerName www.lihuai.net
     ErrorLog logs/www.lihuai.net-error_log
     CustomLog logs/www.lihuai.net-access_log common
</VirtualHost>

      在这里我们用到的是ITLee本人的两个域名www.nanrenbuhuai.com和www.lihuai.net,在实际应用中将其替换为自己的域名。当然,如果你要配置更多的站点,可以参考这样的方式继续添加,我们用两个站点作为说明。
      以域名www.lihuai.net为例,需要说明一个问题,如果你在解析域名的时候将www.lihuai.net和lihuai.net都进行了解析,这个时候你访问lihuai.net的时候可能访问到的是www.nanrenbuhuai.com这个站点而不是www.lihuai.net,这该怎么办呢?我们可以在配置文件中再添加一个虚拟主机,即在配置文件添加:

<VirtualHost *:80>
#    ServerAdmin webmaster@dummy-host.example.com
     DocumentRoot /var/www/web/itlee
     ServerName lihuai.net
     ErrorLog logs/www.lihuai.net-error_log
     CustomLog logs/www.lihuai.net-access_log common
</VirtualHost>

再次访问,问题得以解决!

3.配置完成,重启apache

      修改完配置文件后,记得一定要重启apache,否则修改是不会起到作用的,这是很多刚上手的人员最容易忽略的问题。重启命令:/etc/init.d/httpd restart,当然这个只是ITLee主机上的命令,根据主机不同可能具体操作不同,这里只是做个参考。
      这样,一个apache服务器放置多个站点的配置工作就完成了,希望对大家有所帮助!
欢迎各位留言交流,共同进步!
如非特殊说明,文章均为ITLee原创,转载请注明原文地址:http://www.lihuai.net/linux/513.html/

【技术交流,欢迎大家拍砖】

  1. 瑜伽减肥视频 说道:

    Thanks, 這篇內容很給力

  2. 男人不坏 说道:

    支持博主,走一个!!

  3. sui 说道:

    我现在还在折腾虚拟主机 还没到你的程度 呵呵
    学习过程中 呵呵

  4. py188.net 说道:

    如果是drupal的话根本不用这么麻烦

    • TenggLee 说道:

      我用的时候经常是这么用的,不知道兄台有什么更好的办法?

  5. 这个是不是叫伪静态啊?求科普

  6. 骷髅猫 说道:

    这个估计我是弄不来。呵呵。