首页 > 服务器相关 > linux下apache的虚拟主机配置,基于多IP和基于多域名的虚拟主机。

linux下apache的虚拟主机配置,基于多IP和基于多域名的虚拟主机。

类似于windows平台下的apache虚拟主机配置,这里唯一的几点不同在于debian中的apache2(通过apt-get安装的)是在/etc/ apache2里面

本文A篇幅教你实现多个基于127.0.0.*(公网IP道理相同)的IP来控制本机的虚拟主机,B篇幅教你实现基于多个域名的虚拟主机

A的好处是不用记名字,但是稍微麻烦。直接通过ip来访问。B的好处是简单快捷,通过域名直接访问,不用停掉default的配置文件.
A

实现在/www/my_project1通过本地127.0.0.2来访问
1: 创建站点配置文件

touch /etc/apache2/sites-available/my_project1

vim /etc/apache2/sites-available/my_project1

2:进入后输入

<VirtualHost 127.0.0.2:80>

ServerName 127.0.0.2

DocumentRoot /home/www/my_project1
</VirtualHost>

3:激活站点,停掉默认的

a2dissite default

a2dissite default-ssl

a2ensite my_project1

(需要注意一下的是,default里面默认的其他的配置,需要迁移到这里面来)

在/home/www/my_project1里面创建httpd.conf文件

<VirtualHost 127.0.0.2:80>
    ServerName my_project1
    DocumentRoot /home/www/my_project1

    <Directory /home/www/my_project1>
        AllowOverride All
        Options All
    </Directory>
</VirtualHost>

然后在上面2里面的文件加载这个httpd.conf
Include /home /wwwmy_project1/httpd.conf

4:加载站点

/etc/init.d/apache2 reload

5:修改hosts来指向127.0.0.2

vim /etc/hosts

加入

127.0.0.2 my_project2

打开浏览器 输入127.0.0.2 可以访问到/home/www/my _project1了
其它需要添加的项目依次修改增加对应的内容即可。

B

实现在浏览器输入my_project2.com来访问/home/www/my_project2

1: 创建站点配置文件

touch /etc/apache2/sites-available/my_project2

vim /etc/apache2/sites-available/my_project2

2:进入后输入

<VirtualHost *:80>

ServerName my_project2.com
DocumentRoot /home/www/my_project2
</VirtualHost>

3:激活站点

a2ensite my_project2

4:加载站点

/etc/init.d/apache2 reload

5:修改hosts

vim /etc/hosts

加入

127.0.0.1 my_project2.com

打开浏览器 输入my_project2.com 可以访问到/home/www/my _project2了
其它需要添加的项目依次修改增加对应的内容即可。
直接在my_project2里面添加

<VirtualHost *:80>

ServerName my_project3.com
DocumentRoot /home/www/my_project3
</VirtualHost>

然后

a2ensite my_project2

在host里面添加对应的域名 my_project3 指向127.0.0.1

/etc/init.d/apache2 reload

就可以通过my_project1.com 和my_project2.com来访问对应的.
B这种方法推荐使用.

上一篇: 如何设计一个php自动加载类

下一篇: mysql之varchar与char