如何通过Apache在本地配置多个虚拟主机
如何使用 Apache 在本地配置出多个虚拟主机呢?而且使用不同的“域名”来访问本地不同的站点呢?
一般情况下,咱们都使用 localhost 来访问本机上的服务器,在我们的 C:/WINDOWS/system32/drivers/etc/hosts 文件中默认有一个
127.0.0.1 localhost
当我们在浏览器地址栏键入
http://localhost
的时候,会显示出服务器根目录中的许多文件夹(若你的根目录不是只有一个站点的话),就像
Index of / BAK/ B_Discuz/ B_Supesite/ B_UCenter/ B_Uchome/ B_Uchome_Bak/ B_XSpace/ DiscuZ_X1/ Javascript/ NewUch/ PHP/ UchUtf8/ Zend Framework_1.10.8/ Zendphpweb20/ mycms/ phpMyAdmin/ userAdminManager/
现在我想通过一个自定义的“域名”来访问我的根目录中的站点,譬如
1,根目录中有一个 phpMyAdmin/ 的文件夹(倒数第二个),它是一个网页版的数据库管理系统(肯定不会陌生的吧!),我想通过访问一个简单的:
http://dbmanager
来进入这个系统(而不用输入 localhost,再点击 phpMyAdmin/ 才进入);
2,根目录中有一个 Zendphpweb20/ 的文件夹(倒数第三个),它只是一个本地应用站点,我想通过访问
http://phpweb20
来进入这个本地站点;
现在要干些什么呢?跟我来吧!看狼蚁网站SEO优化
1> 修改系统的 hosts 文件
打开之前说过的系统的 hosts 文件,来给我们的电脑添加两个“假的”DNS 项,加入代码
127.0.0.2 dbmanager
127.0.0.3 phpweb20
这样,我们的浏览器就会将 dbmanager 主机名解析为 127.0.0.2,将 phpweb20 主机名解析为 127.0.0.3。
2> 修改 Apache 配置文件
在我的本机内 Apache 的主配置文件在
D:/usr/local/apache2/conf/httpd.conf
说是修改 Apache 的配置文件,其实只是添加了一些内容,因为不想修改 Apache 的主配置文件,所以我们最好在各个站点写好自己的虚拟主机配置子文件,然后使用 Include 指令将其包含到 Apache 的主配置文件里。
其实在 Apache 的主配置文件的最下方有虚拟主机的配置示例,只不过都被注释掉了
# 基于名称的虚拟主机示例 #<VirtualHost 127.0.0.2:80> # ServerAdmin admin@system # DocumentRoot D:\usr\webroot\webhosting1 # ServerName 127.0.0.2 # ErrorLog logs/dummy-host.example.-error_log # CustomLog logs/dummy-host.example.-aess_log mon #</VirtualHost> #<VirtualHost 127.0.0.3:80> # ServerAdmin admin@system # DocumentRoot D:\usr\webroot\webhosting2 # ServerName 127.0.0.3 # ErrorLog logs/dummy-host.example.-error_log # CustomLog logs/dummy-host.example.-aess_log mon #</VirtualHost> #<VirtualHost 127.0.0.4:80> # ServerAdmin admin@system # DocumentRoot D:\usr\webroot\webhosting3 # ServerName 127.0.0.4 # ErrorLog logs/dummy-host.example.-error_log # CustomLog logs/dummy-host.example.-aess_log mon #</VirtualHost>
在配置文件的最下方添加代码
# 包含 dbmanager 虚拟主机配置文件
Include D:/usr/webroot/phpMyAdmin/httpd.conf
# 包含 phpweb20 虚拟主机配置文件
Include D:/usr/webroot/Zendphpweb20/httpd.conf
(我的 localhost 的根目录为 D:/usr/webroot/)
3> 创建各个虚拟主机的子配置文件
创建 dbmanager 的配置文件D:/usr/webroot/phpMyAdmin/httpd.conf
#dbmanager 虚拟主机设置 <VirtualHost 127.0.0.2:80> ServerName dbmanager DocumentRoot D:/usr/webroot/phpMyAdmin <Directory D:/usr/webroot/phpMyAdmin> AllowOverride All Options All </Directory> </VirtualHost>
创建 phpweb20 的配置文件D:/usr/webroot/Zendphpweb20/httpd.conf
#phpweb20 虚拟主机设置 <VirtualHost 127.0.0.3:80> ServerName phpweb20 DocumentRoot D:/usr/webroot/Zendphpweb20/htdocs <Directory D:/usr/webroot/Zendphpweb20/htdocs> AllowOverride All Options All </Directory> #修改 PHP 配置(可选) php_value include_path .;D:/usr/webroot/Zendphpweb20/include;D:/usr/local/php5/PEAR php_value magic_quotes_gpc off php_value register_globals off </VirtualHost>
各个虚拟主机的配置就看应用站点的不同需要了,DocumentRoot 为其根目录(php_value 是修改此站点的 PHP 运行参数,根据自己应用的需要来写,这样就不必修改 PHP 主配置文件)。
4> 重启 Apache 服务
这个就不多说了。
完毕!好了,在浏览器地址栏输入分别输入
http://dbmanager
http://phpweb20
我们的目的达到了!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持狼蚁SEO。
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程