Apache搭建多站点

我的个人网站:程序员虾说

我的公众号:

Apache搭建多站点_第1张图片

 

我个人本来就有一台云服务器,上面挂着我的博客,然后注册了两个域名,想额外搭建两个网站。但是又不想再花钱买服务器(主要是太穷),所以就在已有的那台机器上又增加了两个网站。本来是想通过Nginx搭建的,但是因为已经有Apache了,所以就直接搭建在Apache上面了。

在开始之前先明确几个事情:

服务器系统:CentOs

Apache的安装路径:/usr/local/apache/

三个域名分别为:domain1.com, domain2.com, domain3.com

三个网站根目录分别为:/home/www/site1/,/home/www/site2/,/home/www/site3/

利用Apache搭建多站点有三种方式:

 1、 基于IP地址
这种方法适用于一台服务器有多个IP的情况,但是一般来说我们的一台服务器不会有多个IP供我们使用。

2、 基于端口号
这种方式是通过域名加端口的方式来区分不同网站的,比如domain.com:8080, domain.com:8081,这种方式适合域名稀缺但是端口充足的情况。但是谁会在访问网站的时候还加个端口?用户能记住你的域名就不错了,还想让人家记住你的端口?过分了!
3、 基于主机名
这种方式是在做域名解析的时候,将所有域名都指向同一IP,然后通过不同的域名来区分不同网站。也就是说domain1.com, domain2.com, domain3.com三个域名的IP都是同一个,但是访问的是不同网站。我就是通过这种方式来实现的。

具体步骤:

1、让Apache启动时能加载虚拟主机模块

打开Apache安装目录下的conf/httpd.conf文件,去掉下面两行代码前面的注释:
# LoadModule vhost_alias_module modules/mod_vhost_alias.so
# Include conf/extra/httpd-vhosts.conf

2、接着在同一文件中找到DocumentRootDirectory两个配置项,将其值改为站点根目录的上级目录:
DocumentRoot "/home/www"

3、可打开Apache安装目录下conf/extra/httpd-vhosts.conf文件,加上下面的内容:


DocumentRoot "/home/www/site1"
ServerName domain1.com



DocumentRoot "/home/www/site2"
ServerName domain2.com



DocumentRoot "/home/www/site3"
ServerName domain3.com

最后/usr/local/apache/bin/apachectl restart重启Apache。

你可能感兴趣的:(杂七杂八)