热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Apache服务器配置多个网站

示例1:修改apache里的httpd.conf文件下面代码提供参考,具体参数大家根据情况做改动listen8000VirtualHost127.0.0.1:8000ServerName“127.0.0.1:8000″DocumentRoot“D:\AppServ\www\yanor”Directory“D:\AppS

示例1:

修改apache里的httpd.conf文件

下面代码提供参考,具体参数大家根据情况做改动

listen 8000

ServerName “127.0.0.1:8000″
DocumentRoot “D:\AppServ\www\yanor”

Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all


ServerName “127.0.0.2:8000″
DocumentRoot “D:\AppServ\www\fozoe”

Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all


ServerName “127.0.0.3:8000″
DocumentRoot “D:\AppServ\www\fozoecn”

Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all


ServerName “127.0.0.4:8000″
DocumentRoot “D:\AppServ\www\jkmx”

Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all

实际上,上面对应了四个网站 分别用不同的IP访问,这样一来,在www文件夹里设定好子文件夹就可以,提高多网站开发的效率,一台apperv服务器里可以同时开发管理测试很多网站了。

示例2:
 
DocumentRoot "F:\web\www\hhjjsy"   
ServerName 192.168.1.171               

 
DocumentRoot "F:\web\www\phpcms"   
ServerName 192.168.1.172              

 
DocumentRoot "F:\web\www\so"   
ServerName 192.168.1.173               

 
DocumentRoot "F:\web\www\test"   
ServerName 192.168.1.174               


 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

二、主机头:


DocumentRoot F:/Apache/wwwroot/web1
ServerName www.example1.com


DocumentRoot F:/Apache/wwwroot/web2
ServerName www.example2.com


DocumentRoot F:/Apache/wwwroot/web3
ServerName www.example3.com


DocumentRoot F:/Apache/wwwroot/web4
ServerName www.example4.com


 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

基于Apache在本地配置多个虚拟主机站点  

简单的说,打开httpd.conf 在最后加入如下内容:
Xml代码
 
    DocumentRoot d:/AppServ/www2  
    ServerName 127.0.0.2:80  
 
 
    Options Indexes FollowSymLinks Multiviews  
    AllowOverride All  
    Order Allow,Deny  
    Allow from all  
 


    DocumentRoot d:/AppServ/www2
    ServerName 127.0.0.2:80



    Options Indexes FollowSymLinks Multiviews
    AllowOverride All
    Order Allow,Deny
    Allow from all


"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.2\conf ):
1、Listen部分,必须直接指定端口,不指定ip地址,配置应写为:
Listen 80
2、不用像基于域名的虚拟主机那样写“NameVirtualHost”。

3、虚拟主机配置段:在httpd.conf 最后加上
Xml代码
 
    DocumentRoot d:/AppServ/www2  
    ServerName 127.0.0.2:80  
 
 
    DocumentRoot d:/AppServ/www3  
    ServerName 127.0.0.3:80  
... 


    DocumentRoot d:/AppServ/www2
    ServerName 127.0.0.2:80


    DocumentRoot d:/AppServ/www3
    ServerName 127.0.0.3:80
...

4、然后相应的配置好各个目录属性,下面是一个目录属性的典型配置:
Xml代码
 
    Options Indexes FollowSymLinks Multiviews  
    AllowOverride All  
    Order Allow,Deny  
    Allow from all  
 
 
    Options Indexes FollowSymLinks Multiviews  
    AllowOverride All  
    Order Allow,Deny  
    Allow from all  
 
-----------------

例如你的主机 IP:192.168.1.8

而你有三个站点,域名 为:www.111.com ,www.222.com ,www.333.com

相应的网站 文件放在主机的 :\web site\111;D:\website\222;D:\website\333文件夹下

现在打开APACHE配置文件httpd.conf文件,设置不同的域名到不同的目录中:

  NameVirtualHost 192.168.1.8


DocumentRoot "D:\website\111"
ServerName www.111.com


DocumentRoot "D:\website\222"
ServerName www.222.com


DocumentRoot "D:\website\333"
ServerName www.333.com

保存关闭文件,重启一下APACHE就可以了!

 apache一机多站IP法

示例1:

修改apache里的httpd.conf文件

下面代码提供参考,具体参数大家根据情况做改动

listen 8000

ServerName “127.0.0.1:8000″
DocumentRoot “D:\AppServ\www\yanor”

Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all


ServerName “127.0.0.2:8000″
DocumentRoot “D:\AppServ\www\fozoe”

Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all


ServerName “127.0.0.3:8000″
DocumentRoot “D:\AppServ\www\fozoecn”

Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all


ServerName “127.0.0.4:8000″
DocumentRoot “D:\AppServ\www\jkmx”

Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all

实际上,上面对应了四个网站 分别用不同的IP访问,这样一来,在www文件夹里设定好子文件夹就可以,提高多网站开发的效率,一台apperv服务器里可以同时开发管理测试很多网站了。

示例2:
 
DocumentRoot "F:\web\www\hhjjsy"   
ServerName 192.168.1.171               

 
DocumentRoot "F:\web\www\phpcms"   
ServerName 192.168.1.172              

 
DocumentRoot "F:\web\www\so"   
ServerName 192.168.1.173               

 
DocumentRoot "F:\web\www\test"   
ServerName 192.168.1.174               


 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

二、主机头:


DocumentRoot F:/Apache/wwwroot/web1
ServerName www.example1.com


DocumentRoot F:/Apache/wwwroot/web2
ServerName www.example2.com


DocumentRoot F:/Apache/wwwroot/web3
ServerName www.example3.com


DocumentRoot F:/Apache/wwwroot/web4
ServerName www.example4.com


 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

基于Apache在本地配置多个虚拟主机站点  

简单的说,打开httpd.conf 在最后加入如下内容:
Xml代码
 
    DocumentRoot d:/AppServ/www2  
    ServerName 127.0.0.2:80  
 
 
    Options Indexes FollowSymLinks Multiviews  
    AllowOverride All  
    Order Allow,Deny  
    Allow from all  
 


    DocumentRoot d:/AppServ/www2
    ServerName 127.0.0.2:80



    Options Indexes FollowSymLinks Multiviews
    AllowOverride All
    Order Allow,Deny
    Allow from all


"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.2\conf ):
1、Listen部分,必须直接指定端口,不指定ip地址,配置应写为:
Listen 80
2、不用像基于域名的虚拟主机那样写“NameVirtualHost”。

3、虚拟主机配置段:在httpd.conf 最后加上
Xml代码
 
    DocumentRoot d:/AppServ/www2  
    ServerName 127.0.0.2:80  
 
 
    DocumentRoot d:/AppServ/www3  
    ServerName 127.0.0.3:80  
... 


    DocumentRoot d:/AppServ/www2
    ServerName 127.0.0.2:80


    DocumentRoot d:/AppServ/www3
    ServerName 127.0.0.3:80
...

4、然后相应的配置好各个目录属性,下面是一个目录属性的典型配置:
Xml代码
 
    Options Indexes FollowSymLinks Multiviews  
    AllowOverride All  
    Order Allow,Deny  
    Allow from all  
 
 
    Options Indexes FollowSymLinks Multiviews  
    AllowOverride All  
    Order Allow,Deny  
    Allow from all  
 
-----------------

例如你的主机 IP:192.168.1.8

而你有三个站点,域名 为:www.111.com ,www.222.com ,www.333.com

相应的网站 文件放在主机的 :\web site\111;D:\website\222;D:\website\333文件夹下

现在打开APACHE配置文件httpd.conf文件,设置不同的域名到不同的目录中:

  NameVirtualHost 192.168.1.8


DocumentRoot "D:\website\111"
ServerName www.111.com


DocumentRoot "D:\website\222"
ServerName www.222.com


DocumentRoot "D:\website\333"
ServerName www.333.com

保存关闭文件,重启一下APACHE就可以了!

Apache配置多个站点(非虚拟目录)

Apache配置多个站点;

例如,现在您有一站点:

http://localhost/

想添加一个端口运行另外一个站点:

http://localhost:8080/  

第一步: 新建一个配置文件

复制 httpd.conf 另存为 hooyes.conf  (当然您可以起一个比这个更好听一点的名字)

第二步: 修改配置文件

打开 hooyes.conf 文件

将其中的端口设置: Listen:8080

将网站目录设置:

DocumentRoot  " D:/Tweb/hooyes/webroot "      (D:/Tweb/hooyes/webroot 为您的第二站点的目录)

#

# This should be changed to whatever you set DocumentRoot to.

#

        (这个地方也要修改)

第三步:新建一个服务

httpd.exe  - k install  - n  " 服务名 "   -f   " X:安装目录\apache2.2\conf\hooyes.conf "

# 示例:

# 如果Windows 环境下 运行 cmd 到 Apache 安装目录的Bin 目录下: 

# 执行:  

httpd.exe  - k install  - n  " Apache_hooyes "   -f   " C:\apache2.2\conf\hooyes.conf "

第四步:

OK了,你可以测试您的站点是否运行正常了;

附其它操作: 

# 其他的命令:

# 将Apache安装为服务:

httpd  - k install

# 指定服务的名称,当你在同一机器上安装多个Apache服务时,你必须为它们指定不同的名字。

httpd  - k install  - n  " 服务名 "  为不同名称的服务使用不同的配置文件,则安装时需要指定配置文件:httpd  - k install  - n  " 服务名 "   -f   " c:\files\my.conf "  

# 如果你使用的是第一个命令,也就是除 -k install 外没有其它命令行参数,那么被安装的服务名称将是:Apache2 ,配置文件将使用conf\httpd.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服务器,就选择"only for the Current User, on Port 8080, when started Manually"。

The installation type 选择Typical会安装除开发模块需要使用的源码和库以外的所有内容。选择Custom可以自定义安装哪些项目。完整安装大约需要13MB磁盘空间,这其中并不包含你的网站文件所用空间。

3、配置Apache及实现多站点

安装好Apache以后,可以在浏览器中输入http://localhost 测试,如果配置正常会显示It's Working.

更改第一个站点的根目录: 在文件Apache2.2\conf\httpd.conf中查找 DocumentRoot 属性,将后面的路径改为你的主站点的路径,如:D:\www\web1

为第二个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.2\conf\web2.conf"

其他的命令:

将Apache安装为Windows NT服务:

httpd -k install

指定服务的名称,当你在同一机器上安装多个Apache服务时,你必须为它们指定不同的名字。

httpd -k install -n "服务名"

为不同名称的服务使用不同的配置文件,则安装时需要指定配置文件:

httpd -k install -n "服务名" -f "c:\files\my.conf"

如果你使用的是第一个命令,也就是除 -k install 外没有其它命令行参数,那么被安装的服务名称将是:Apache2 ,配置文件将使用conf\httpd.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


推荐阅读
  • 随着Linux操作系统的广泛使用,确保用户账户及系统安全变得尤为重要。用户密码的复杂性直接关系到系统的整体安全性。本文将详细介绍如何在CentOS服务器上自定义密码规则,以增强系统的安全性。 ... [详细]
  • JavaScript 跨域解决方案详解
    本文详细介绍了JavaScript在不同域之间进行数据传输或通信的技术,包括使用JSONP、修改document.domain、利用window.name以及HTML5的postMessage方法等跨域解决方案。 ... [详细]
  • 搭建个人博客:WordPress安装详解
    计划建立个人博客来分享生活与工作的见解和经验,选择WordPress是因为它专为博客设计,功能强大且易于使用。 ... [详细]
  • 本文探讨了如何在PHP与MySQL环境中实现高效的分页查询,包括基本的分页实现、性能优化技巧以及高级的分页策略。 ... [详细]
  • 本文介绍了SIP(Session Initiation Protocol,会话发起协议)的基本概念、功能、消息格式及其实现机制。SIP是一种在IP网络上用于建立、管理和终止多媒体通信会话的应用层协议。 ... [详细]
  • 我的读书清单(持续更新)201705311.《一千零一夜》2006(四五年级)2.《中华上下五千年》2008(初一)3.《鲁滨孙漂流记》2008(初二)4.《钢铁是怎样炼成的》20 ... [详细]
  • 解决UIScrollView自动偏移问题的方法
    本文介绍了一种有效的方法来解决在使用UIScrollView时出现的自动向下偏移的问题,通过调整特定的属性设置,可以确保滚动视图正常显示。 ... [详细]
  • 笔记说明重学前端是程劭非(winter)【前手机淘宝前端负责人】在极客时间开的一个专栏,每天10分钟,重构你的前端知识体系& ... [详细]
  • Java虚拟机及其发展历程
    Java虚拟机(JVM)是每个Java开发者日常工作中不可或缺的一部分,但其背后的运作机制却往往显得神秘莫测。本文将探讨Java及其虚拟机的发展历程,帮助读者深入了解这一关键技术。 ... [详细]
  • 本文探讨了一种常见的C++面试题目——实现自己的String类。通过此过程,不仅能够检验开发者对C++基础知识的掌握程度,还能加深对其高级特性的理解。文章详细介绍了如何实现基本的功能,如构造函数、析构函数、拷贝构造函数及赋值运算符重载等。 ... [详细]
  • 本文详细介绍如何安装和配置DedeCMS的移动端站点,包括新版本安装、老版本升级、模板适配以及必要的代码修改,以确保移动站点的正常运行。 ... [详细]
  • Asynchronous JavaScript and XML (AJAX) 的流行很大程度上得益于 Google 在其产品如 Google Suggest 和 Google Maps 中的应用。本文将深入探讨 AJAX 在 .NET 环境下的工作原理及其实现方法。 ... [详细]
  • 本文介绍了如何在AngularJS应用中使用ng-repeat指令创建可单独点击选中的列表项,并详细描述了实现这一功能的具体步骤和代码示例。 ... [详细]
  • H5技术实现经典游戏《贪吃蛇》
    本文将分享一个使用HTML5技术实现的经典小游戏——《贪吃蛇》。通过H5技术,我们将探讨如何构建这款游戏的两种主要玩法:积分闯关和无尽模式。 ... [详细]
  • 本文详细介绍了如何在Oracle VM VirtualBox中实现主机与虚拟机之间的数据交换,包括安装Guest Additions增强功能,以及如何利用这些功能进行文件传输、屏幕调整等操作。 ... [详细]
author-avatar
My_Qzj
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有