博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
基于 Apache 在本地配置多个虚拟主机
阅读量:6364 次
发布时间:2019-06-23

本文共 2889 字,大约阅读时间需要 9 分钟。

如何使用 Apache 在本地配置出多个虚拟主机呢?而且使用不同的“域名”来访问本地不同的站点呢?

一般情况下,咱们都使用 localhost 来访问本机上的服务器,在我们的 C:/WINDOWS/system32/drivers/etc/hosts 文件中默认有一个:

127.0.0.1       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/ 的文件夹(倒数第二个),它是一个网页版的数据库管理系统(肯定不会陌生的吧!),我想通过访问一个简单的:

来进入这个系统(而不用输入 localhost,再点击 phpMyAdmin/ 才进入);

2,根目录中有一个 Zendphpweb20/ 的文件夹(倒数第三个),它只是一个本地应用站点,我想通过访问:

来进入这个本地站点;

现在要干些什么呢?跟我来吧!看下面:

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 的主配置文件的最下方有虚拟主机的配置示例,只不过都被注释掉了:

# 基于名称的虚拟主机示例:#
# ServerAdmin admin@system # DocumentRoot D:\usr\webroot\webhosting1 # ServerName 127.0.0.2 # ErrorLog logs/dummy-host.example.com-error_log # CustomLog logs/dummy-host.example.com-access_log common#
#
# ServerAdmin admin@system # DocumentRoot D:\usr\webroot\webhosting2 # ServerName 127.0.0.3 # ErrorLog logs/dummy-host.example.com-error_log # CustomLog logs/dummy-host.example.com-access_log common#
#
# ServerAdmin admin@system # DocumentRoot D:\usr\webroot\webhosting3 # ServerName 127.0.0.4 # ErrorLog logs/dummy-host.example.com-error_log # CustomLog logs/dummy-host.example.com-access_log common#

在配置文件的最下方添加代码:

# 包含 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 虚拟主机设置
ServerName dbmanager DocumentRoot D:/usr/webroot/phpMyAdmin
AllowOverride All Options All

创建 phpweb20 的配置文件:D:/usr/webroot/Zendphpweb20/httpd.conf

#phpweb20 虚拟主机设置
ServerName phpweb20 DocumentRoot D:/usr/webroot/Zendphpweb20/htdocs
AllowOverride All Options All
#修改 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

各个虚拟主机的配置就看应用站点的不同需要了,DocumentRoot 为其根目录(php_value 是修改此站点的 PHP 运行参数,根据自己应用的需要来写,这样就不必修改 PHP 主配置文件)。

4> 重启 Apache 服务:

这个就不多说了。

完毕!好了,在浏览器地址栏输入分别输入:

http://dbmanagerhttp://phpweb20

我们的目的达到了!!: - >

转载于:https://www.cnblogs.com/chris-oil/p/3465254.html

你可能感兴趣的文章
HDU 1538 A Puzzle for Pirates(海盗分金问题)
查看>>
C# Web Forms - Using jQuery FullCalendar
查看>>
H5移动端知识点总结
查看>>
Matlab绘图高级部分
查看>>
Sublime-Text-2-pydocstring --- 自动生成python docstring的插件
查看>>
初涉c#设计模式-Observer Pattern-从公司管理系统删单提醒开始
查看>>
UNIX进程环境
查看>>
命名空间和定义和使用
查看>>
学习面试题Day03
查看>>
(转)jquery实现图片轮播
查看>>
webpy,希望能多了解一些关于WSGI,PYTHON的WEB开发框架的事,也希望能进一步了解PYTHON...
查看>>
微信支付JS API使用心得
查看>>
我最喜欢的jQuery插件模板
查看>>
heroku部署java web项目
查看>>
准备.Net转前端开发-WPF界面框架那些事,UI快速实现法
查看>>
【云计算】Docker 多进程管理方案
查看>>
C/C++中经常使用的字符串处理函数和内存字符串函数
查看>>
[LeetCode] Best Meeting Point 最佳开会地点
查看>>
基于InstallShield2013LimitedEdition的安装包制作
查看>>
【转】从Shell脚本内部将所有标准输出及标准错误显示在屏幕并同时写入文件的方法...
查看>>