示例1:
修改apache里的httpd.conf文件
下面代码提供参考,具体参数大家根据情况做改动
listen 8000
<VirtualHost 127.0.0.1:8000>
ServerName “127.0.0.1:8000″
DocumentRoot “D:AppServwwwyanor”
<Directory “D:AppServwwwyanor”>
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost 127.0.0.2:8000>
ServerName “127.0.0.2:8000″
DocumentRoot “D:AppServwwwfozoe”
<Directory “D:AppServwwwfozoe”>
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost 127.0.0.3:8000>
ServerName “127.0.0.3:8000″
DocumentRoot “D:AppServwwwfozoecn”
<Directory “D:AppServwwwfozoecn”>
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost 127.0.0.4:8000>
ServerName “127.0.0.4:8000″
DocumentRoot “D:AppServwwwjkmx”
<Directory “D:AppServwwwjkmx”>
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
实际上,上面对应了四个网站 分别用不同的IP访问,这样一来,在www文件夹里设定好子文件夹就可以,提高多网站开发的效率,一台apperv服务器里可以同时开发管理测试很多网站了。
示例2:
<VirtualHost 192.168.1.171>
DocumentRoot "F:webwwwhhjjsy"
ServerName 192.168.1.171
</VirtualHost>
<VirtualHost 192.168.1.172>
DocumentRoot "F:webwwwphpcms"
ServerName 192.168.1.172
</VirtualHost>
<VirtualHost 192.168.1.173>
DocumentRoot "F:webwwwso"
ServerName 192.168.1.173
</VirtualHost>
<VirtualHost 192.168.1.174>
DocumentRoot "F:webwwwtest"
ServerName 192.168.1.174
</VirtualHost>
<Directory "F:webwww">
Options FollowSymLinks IncludesNOEXEC Indexes
DirectoryIndex index.html index.htm default.htm index.php default.php index.cgi default.cgi index.pl default.pl index.shtml
AllowOverride None
Order Allow, Deny
Allow from all
</Directory>
二、主机头:
<VirtualHost *:80>
DocumentRoot F:/Apache/wwwroot/web1
ServerName www.example1.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot F:/Apache/wwwroot/web2
ServerName www.example2.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot F:/Apache/wwwroot/web3
ServerName www.example3.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot F:/Apache/wwwroot/web4
ServerName www.example4.com
</VirtualHost>
<Directory "F:/Apache/wwwroot">
Options FollowSymLinks IncludesNOEXEC Indexes
DirectoryIndex index.html index.htm default.htm index.php default.php index.cgi default.cgi index.pl default.pl index.shtml
AllowOverride None
Order Allow, Deny
Allow from all
</Directory>
基于Apache在本地配置多个虚拟主机站点
简单的说,打开httpd.conf 在最后加入如下内容:
Xml代码
<VirtualHost 127.0.0.2:80>
DocumentRoot d:/AppServ/www2
ServerName 127.0.0.2:80
< irtualHost>
<Directory "d:/AppServ/www2">
Options Indexes FollowSymLinks Multiviews
AllowOverride All
Order Allow,Deny
Allow from all
</Directory>
<VirtualHost 127.0.0.2:80>
DocumentRoot d:/AppServ/www2
ServerName 127.0.0.2:80
< irtualHost>
<Directory "d:/AppServ/www2">Options Indexes FollowSymLinks Multiviews
AllowOverride All
Order Allow,Deny
Allow from all
</Directory>
"d:/AppServ/www2" 为你的站点存放目录:重启apache2以后,你的虚拟主机就配置好了,以后就可以通过127.0.0.2,和127.0.0.3进入不同的站点了。
下面为详细说明分析:
在我们安装APACHE的时候一般默认的apache的配置是只有一个网站,这样切换起来很不方便。其实这个问题很好解决,就是把本机的 apache配置成为虚拟服务器。但是,网上大多数教程的是教用 apache如何配置基于域名的虚拟主机的,而在本机调试网站的时候,一般都是用本地ip(127.0.0.1 或 localhost)直接访问,没有用到域名。所以得把apache配置成为基于ip地址的虚拟主机。
首先,我们都知道,所有以127打头的ip地址都应该指向本机,并不只有127.0.0.1,这点大家可以试试。
这样一来,也就是说本机有足够多的ip地址供你来开设虚拟主机了。
废话少说,进入正式的配置工作,下面是apache的httpd.conf里相关配置部分( httpd.conf 位于 Apache2.2conf ):
1、Listen部分,必须直接指定端口,不指定ip地址,配置应写为:
Listen 80
2、不用像基于域名的虚拟主机那样写“NameVirtualHost”。
3、虚拟主机配置段:在httpd.conf 最后加上
Xml代码
<VirtualHost 127.0.0.2:80>
DocumentRoot d:/AppServ/www2
ServerName 127.0.0.2:80
< irtualHost>
<VirtualHost 127.0.0.3:80>
DocumentRoot d:/AppServ/www3
ServerName 127.0.0.3:80
< irtualHost>...
<VirtualHost 127.0.0.2:80>
DocumentRoot d:/AppServ/www2
ServerName 127.0.0.2:80
< irtualHost>
<VirtualHost 127.0.0.3:80>
DocumentRoot d:/AppServ/www3
ServerName 127.0.0.3:80
< irtualHost>...
4、然后相应的配置好各个目录属性,下面是一个目录属性的典型配置:
Xml代码
<Directory "d:/AppServ/www2">
Options Indexes FollowSymLinks Multiviews
AllowOverride All
Order Allow,Deny
Allow from all
</Directory>
<Directory "d:/AppServ/www3">
Options Indexes FollowSymLinks Multiviews
AllowOverride All
Order Allow,Deny
Allow from all
</Directory>
-----------------
例如你的主机 IP:192.168.1.8
而你有三个站点,域名 为:www.111.com ,www.222.com ,www.333.com
相应的网站 文件放在主机的 :web site111;D:website222;D:website333文件夹下
现在打开APACHE配置文件httpd.conf文件,设置不同的域名到不同的目录中:
NameVirtualHost 192.168.1.8
<VirtualHost 192.168.1.8>
DocumentRoot "D:website111"
ServerName www.111.com
</Virtualhost>
<VirtualHost 192.168.1.8>
DocumentRoot "D:website222"
ServerName www.222.com
</Virtualhost>
<VirtualHost 192.168.1.8>
DocumentRoot "D:website333"
ServerName www.333.com
</Virtualhost>
保存关闭文件,重启一下APACHE就可以了!
apache一机多站IP法
示例1:
修改apache里的httpd.conf文件
下面代码提供参考,具体参数大家根据情况做改动
listen 8000
<VirtualHost 127.0.0.1:8000>
ServerName “127.0.0.1:8000″
DocumentRoot “D:AppServwwwyanor”
<Directory “D:AppServwwwyanor”>
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost 127.0.0.2:8000>
ServerName “127.0.0.2:8000″
DocumentRoot “D:AppServwwwfozoe”
<Directory “D:AppServwwwfozoe”>
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost 127.0.0.3:8000>
ServerName “127.0.0.3:8000″
DocumentRoot “D:AppServwwwfozoecn”
<Directory “D:AppServwwwfozoecn”>
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost 127.0.0.4:8000>
ServerName “127.0.0.4:8000″
DocumentRoot “D:AppServwwwjkmx”
<Directory “D:AppServwwwjkmx”>
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
实际上,上面对应了四个网站 分别用不同的IP访问,这样一来,在www文件夹里设定好子文件夹就可以,提高多网站开发的效率,一台apperv服务器里可以同时开发管理测试很多网站了。
示例2:
<VirtualHost 192.168.1.171>
DocumentRoot "F:webwwwhhjjsy"
ServerName 192.168.1.171
</VirtualHost>
<VirtualHost 192.168.1.172>
DocumentRoot "F:webwwwphpcms"
ServerName 192.168.1.172
</VirtualHost>
<VirtualHost 192.168.1.173>
DocumentRoot "F:webwwwso"
ServerName 192.168.1.173
</VirtualHost>
<VirtualHost 192.168.1.174>
DocumentRoot "F:webwwwtest"
ServerName 192.168.1.174
</VirtualHost>
<Directory "F:webwww">
Options FollowSymLinks IncludesNOEXEC Indexes
DirectoryIndex index.html index.htm default.htm index.php default.php index.cgi default.cgi index.pl default.pl index.shtml
AllowOverride None
Order Allow, Deny
Allow from all
</Directory>
二、主机头:
<VirtualHost *:80>
DocumentRoot F:/Apache/wwwroot/web1
ServerName www.example1.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot F:/Apache/wwwroot/web2
ServerName www.example2.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot F:/Apache/wwwroot/web3
ServerName www.example3.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot F:/Apache/wwwroot/web4
ServerName www.example4.com
</VirtualHost>
<Directory "F:/Apache/wwwroot">
Options FollowSymLinks IncludesNOEXEC Indexes
DirectoryIndex index.html index.htm default.htm index.php default.php index.cgi default.cgi index.pl default.pl index.shtml
AllowOverride None
Order Allow, Deny
Allow from all
</Directory>
基于Apache在本地配置多个虚拟主机站点
简单的说,打开httpd.conf 在最后加入如下内容:
Xml代码
<VirtualHost 127.0.0.2:80>
DocumentRoot d:/AppServ/www2
ServerName 127.0.0.2:80
< irtualHost>
<Directory "d:/AppServ/www2">
Options Indexes FollowSymLinks Multiviews
AllowOverride All
Order Allow,Deny
Allow from all
</Directory>
<VirtualHost 127.0.0.2:80>
DocumentRoot d:/AppServ/www2
ServerName 127.0.0.2:80
< irtualHost>
<Directory "d:/AppServ/www2">Options Indexes FollowSymLinks Multiviews
AllowOverride All
Order Allow,Deny
Allow from all
</Directory>
"d:/AppServ/www2" 为你的站点存放目录:重启apache2以后,你的虚拟主机就配置好了,以后就可以通过127.0.0.2,和127.0.0.3进入不同的站点了。
下面为详细说明分析:
在我们安装APACHE的时候一般默认的apache的配置是只有一个网站,这样切换起来很不方便。其实这个问题很好解决,就是把本机的 apache配置成为虚拟服务器。但是,网上大多数教程的是教用 apache如何配置基于域名的虚拟主机的,而在本机调试网站的时候,一般都是用本地ip(127.0.0.1 或 localhost)直接访问,没有用到域名。所以得把apache配置成为基于ip地址的虚拟主机。
首先,我们都知道,所有以127打头的ip地址都应该指向本机,并不只有127.0.0.1,这点大家可以试试。
这样一来,也就是说本机有足够多的ip地址供你来开设虚拟主机了。
废话少说,进入正式的配置工作,下面是apache的httpd.conf里相关配置部分( httpd.conf 位于 Apache2.2conf ):
1、Listen部分,必须直接指定端口,不指定ip地址,配置应写为:
Listen 80
2、不用像基于域名的虚拟主机那样写“NameVirtualHost”。
3、虚拟主机配置段:在httpd.conf 最后加上
Xml代码
<VirtualHost 127.0.0.2:80>
DocumentRoot d:/AppServ/www2
ServerName 127.0.0.2:80
< irtualHost>
<VirtualHost 127.0.0.3:80>
DocumentRoot d:/AppServ/www3
ServerName 127.0.0.3:80
< irtualHost>...
<VirtualHost 127.0.0.2:80>
DocumentRoot d:/AppServ/www2
ServerName 127.0.0.2:80
< irtualHost>
<VirtualHost 127.0.0.3:80>
DocumentRoot d:/AppServ/www3
ServerName 127.0.0.3:80
< irtualHost>...
4、然后相应的配置好各个目录属性,下面是一个目录属性的典型配置:
Xml代码
<Directory "d:/AppServ/www2">
Options Indexes FollowSymLinks Multiviews
AllowOverride All
Order Allow,Deny
Allow from all
</Directory>
<Directory "d:/AppServ/www3">
Options Indexes FollowSymLinks Multiviews
AllowOverride All
Order Allow,Deny
Allow from all
</Directory>
-----------------
例如你的主机 IP:192.168.1.8
而你有三个站点,域名 为:www.111.com ,www.222.com ,www.333.com
相应的网站 文件放在主机的 :web site111;D:website222;D:website333文件夹下
现在打开APACHE配置文件httpd.conf文件,设置不同的域名到不同的目录中:
NameVirtualHost 192.168.1.8
<VirtualHost 192.168.1.8>
DocumentRoot "D:website111"
ServerName www.111.com
</Virtualhost>
<VirtualHost 192.168.1.8>
DocumentRoot "D:website222"
ServerName www.222.com
</Virtualhost>
<VirtualHost 192.168.1.8>
DocumentRoot "D:website333"
ServerName www.333.com
</Virtualhost>
保存关闭文件,重启一下APACHE就可以了!
Apache配置多个站点(非虚拟目录)
Apache配置多个站点;
例如,现在您有一站点:
http://localhost/
想添加一个端口运行另外一个站点:
http://localhost:8080/
第一步: 新建一个配置文件
复制 httpd.conf 另存为 hooyes.conf (当然您可以起一个比这个更好听一点的名字)
第二步: 修改配置文件
打开 hooyes.conf 文件
将其中的端口设置: Listen:8080
将网站目录设置:
<!-- <br /> <br /> Co
#
# This should be changed to whatever you set DocumentRoot to.
#
<Directory " D:/Tweb/hooyes/webroot " > (这个地方也要修改)
第三步:新建一个服务
<!-- <br /> <br /> Co
# 示例:
# 如果Windows 环境下 运行 cmd 到 Apache 安装目录的Bin 目录下:
# 执行:
httpd.exe - k install - n " Apache_hooyes " -f " C:apache2.2confhooyes.conf "
第四步:
OK了,你可以测试您的站点是否运行正常了;
附其它操作:
<!-- <br /> <br /> Co
# 将Apache安装为服务:
httpd - k install
# 指定服务的名称,当你在同一机器上安装多个Apache服务时,你必须为它们指定不同的名字。
httpd - k install - n " 服务名 " 为不同名称的服务使用不同的配置文件,则安装时需要指定配置文件:httpd - k install - n " 服务名 " -f " c:filesmy.conf "
# 如果你使用的是第一个命令,也就是除 -k install 外没有其它命令行参数,那么被安装的服务名称将是:Apache2 ,配置文件将使用confhttpd.conf 。
移除一个Apache服务:
httpd - k uninstall
# 使用下述命令移除特定名称的Apache服务:
httpd - k uninstall - n " 服务名 "
# 通常,启动、重启、关闭Apache服务的方法是使用Apache Service Monitor工具,另外也可以使用控制#台命令:NET START Apache2 和 NET STOP Apache2 如果是Windows还可通过Windows服务控制面板。
# 在启动Apache服务之前,你应当使用下面的命令检查一下配置文件的正确性:httpd -n "服务名" -t 你#可以通过命令行开关来控制Apache服务。
# 要启动一个已经安装的Apache服务,可以使用:
httpd - k start
# 要停止一个已经安装的Apache服务,可以使用:
httpd - k stop
# 或
httpd - k shutdown
# 要重启一个运行中的Apache服务,强制它重新读取配置文件,可以使用:
httpd - k restart
=========================================================================
apache配置多个站点
1、下载 Apache for Windows
关于Apache最新版本的有关信息可以在http://httpd.apache.org/download.cgi 上找到。你应该下载带有.msi扩展名的Apache for Windows版本。 这是一个单一的Microsoft Installer文件,包含了Apache ,可以立即安装并运行。
2、安装 Apache for Windows
运行已下载的上述Apache .msi文件。安装程序会要求提供下列信息:
Network Domain 你的服务器已经或者将要注册的DNS域名。比如你的服务器的全称DNS域名是server.mydomain.net ,你应当在这里输入:mydomain.net ,本地的话设置为localhost
Server Name 你的服务器的全称DNS域名,如上情况你应当在这里输入:server.mydomain.net,本地的话设置为localhost
Administrator's Email Address 服务器管理员的email地址。这个地址将会在默认的出错页面上显示给客户端。
For whom to install Apache
如果你希望Apache在80端口监听,并被安装为服务(即使无人登陆,Apache仍将运行),就选择"for All Users, on
Port 80, as a Service - Recommended";
如果你希望将Apache安装为个人试验使用,或者已经有一个运行于80端口的WWW服务器,就选择"on
The installation type 选择Typical会安装除开发模块需要使用的源码和库以外的所有内容。选择Custom可以自定义安装哪些项目。完整安装大约需要13MB磁盘空间,这其中并不包含你的网站文件所用空间。
3、配置Apache及实现多站点
安装好Apache以后,可以在浏览器中输入http://localhost 测试,如果配置正常会显示It's Working.
更改第一个站点的根目录: 在文件Apache2.2confhttpd.conf中查找 DocumentRoot 属性,将后面的路径改为你的主站点的路径,如:D:wwwweb1
为第二个Apache服务建立配置文件: 复制并重命名httpd.conf为web2.conf(举个例子而已,也可以叫my.conf等等),修改web2.conf中的Listen 8080 (原来为80)、 ServerName localhost:8080 (原来为80)、 DocumentRoot "D:/www/web2" (原来为web1)
添加第二个Apache服务: Apache安装目录的
bin
子目录下,使用如下命令将Apache安装为Windows NT服务:httpd.exe -k install -n "服务名" -f "d:apache2.2confweb2.conf"
其他的命令:
将Apache安装为Windows NT服务:
httpd -k install
指定服务的名称,当你在同一机器上安装多个Apache服务时,你必须为它们指定不同的名字。
httpd -k install -n "服务名"
为不同名称的服务使用不同的配置文件,则安装时需要指定配置文件:
httpd -k install -n "服务名" -f "c:filesmy.conf"
如果你使用的是第一个命令,也就是除 -k install 外没有其它命令行参数,那么被安装的服务名称将是:Apache2 ,配置文件将使用confhttpd.conf 。
移除一个Apache服务:
httpd -k uninstall
使用下述命令移除特定名称的Apache服务:
httpd -k uninstall -n "服务名"
通常,启动、重启、关闭Apache服务的方法是使用Apache Service Monitor工具,另外也可以使用控制台命令:NET START Apache2 和 NET STOP Apache2 或者通过Windows服务控制面板。在启动Apache服务之前,你应当使用下面的命令检查一下配置文件的正确性:
httpd -n "服务名" -t
你可以通过命令行开关来控制Apache服务。要启动一个已经安装的Apache服务,可以使用:
httpd -k start
要停止一个已经安装的Apache服务,可以使用:
httpd -k stop
或
httpd -k shutdown
要重启一个运行中的Apache服务,强制它重新读取配置文件,可以使用:
httpd -k restart