apache2.2 虚拟主机配置.docx_第1页
apache2.2 虚拟主机配置.docx_第2页
apache2.2 虚拟主机配置.docx_第3页
apache2.2 虚拟主机配置.docx_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一、修改httpd.conf打开appserv的安装目录,找到httpd.conf文件,分别去掉下面两行文字前面的#号。plain 1. #LoadModulevhost_alias_modulemodules/mod_vhost_alias.so去掉#意思是启用apache的虚拟主机功能。 plain 1. #Includeconf/extra/httpd-vhosts.conf去掉这一行的#意思是从conf/extra/httpd-vhosts.conf这个文件导入虚拟主机配置二、修改httpd-vhosts.conf打开该文件,看到以下类似内容。虚拟主机的配置也是参照以下内容配置。下面对该内容进行讲解plain 1. NameVirtualHost*:802. 3. 4. ServerAdminwebmasterdummy-host.www.phpS5. DocumentRootC:/ProgramFiles/Apache2/docs/dummy-host.www.phpS6. ServerNamedummy-host.www.phpS7. ServerAliaswww.dummy-host.www.phpS8. ErrorLoglogs/dummy-host.www.phpS-error.log9. CustomLoglogs/dummy-host.www.phpS-access.logcommon10. NameVirtualHost *:80 注意1:NameVirtualHost 指定虚拟主机所使用的IP地址或域名,但是最好是IP地址。使用基于域名的虚拟主机时,NameVirtualHost是必要的指令。NameVirtualHost可以定义多个。注意2:所有符合NameVirtualHost或标签定义的请求,都会被作为虚拟主机处理,而主服务器将不理 会。NameVirtualHost定义了而标签没有定义的的请求,服务器会找不到相应的虚拟主机而将无法处理。 所以每个NameVirtualHost定义的参数至少要有一个相匹配。注意3:如果设置NameVirtualHost 或为*:80的话,所有针对80端口的请求,都会被虚拟主机处理,请求会根据域名指向某个虚拟主机。如果有来自 80端口的请求,而所请求的域名没有被配置为虚拟主机,那将指向第一个虚拟主机。这样主服务器将无法收到来自80端口的任何请求。为此也要为主服务器配置 一个虚拟主机。ServerAdmin 管理员邮箱DocumentRoot 网站目录 (注意:如果网站目录中的路径有空格,请在路径两端加上双引号)ServerName 要绑定的域名(必填)ServerAlias 要绑定的虚拟主机的别名。(可选,如果多个域名,中间以空格分隔,如果没有,则去掉该行)支持*,?两种通配符,比如 *.,表示任意一个的二级域名都可访问。CustomLog 用户日志文件(可选,如果不需要,则去掉该行)ErrorLog 错误日志(可选,如果不需要,则去掉该行)基于IP地址的虚拟主机plain 1. 2. DocumentRoot/www/example13. ServerN4. plain 1. 2. DocumentRoot/www/example23. ServerN4. 每个虚拟主机可定义多个IP,之间用空格隔开各种虚拟主机的混用plain 1. Listen802. Listen813. 4. NameVirtualHost05. 6. 7. DocumentRoot/www/example18. ServerN9. 10. 11. 12. DocumentRoot/www/example213. ServerN14. 15. 16. NameVirtualHost0:8117. 18. 19. DocumentRoot/www/example320. ServerN21. 22. 23. #IP-based24. 25. DocumentRoot/www/example426. ServerN27. 28. 29. 30. DocumentRoot/www/example531. ServerN32. 虚拟主机混用时的问题一、虚拟主机混用可以这样理解:一行NameVirtualHost指令定义的所有虚拟主机为一组;该组与一个基于IP的虚拟主机平级。即把一行NameVirtualHost定义的整个组看作是一个基于IP的虚拟主机。二、虚拟主机指定的端口必须是Listen定义的。如果虚拟主机没有指定端口,则认为是80端口。如果NameVirtualHost * 这样定义,是指所有地址的所有已定义端口。三、更具体的地址定义优先。比如NameVirtualHost指令定义了*:80,而某个基于IP的虚拟主机定义为:80,那么 此时如有对:80的请求,那请求会被优先指向:80定义的虚拟主机。所以为了避免混乱,不要定义相互有交叉 或包含的地址区间。四、一个虚拟主机,可以同时为基于域名和基于IP的。如上一例中最后一个虚拟主机。这样符合两种定义的请求都会被指同一个虚拟主机。有时要区别内外网对虚拟主机的访问时可以这样,因为来自内网的请求可能和来自外网的请求可能不一样,但是它们需要指向同一个虚拟主机。使用_default_虚拟主机这个虚拟主机可以理解成基于IP的虚拟主机plain 1. 2. DocumentRoot/www/default3. 这个虚拟主机将接管与其它虚拟主机IP和端口不匹配的请求。不过如此一来,主服务器将不会处理任何请求。因此把主服务器配置成一个虚拟主机是必要的。本地机器代理在其它机器上运行的虚拟主机plain 1. 2. ProxyPreserveHostOn3. ProxyPass/foo/no!4. ProxyPass/foo5. ProxyPassReverse/foo6. ServerN7. 一、首先这是一个基于IP的虚拟主机,它接收并处理对IP地址48的请求。二、ProxyPass /foo 将把对48/foo的请求转换为一个代理请求,该请求指向。三、ProxyPass /foo/no ! 不代理针对/foo/no的请求。这个必须放在正常代理指令之前。四、ProxyPreserveHost On 意思是传送原始请求的Host信息给被代理的机器。五、ProxyPassReverse /foo 可以保证请求URL在其它机器上被重定向后,本机处理时也可以保持一致。具体看手册关于反向代理的部分。六、基于域名的虚拟主机也是同样的道理。不管是什么类型的虚拟主机,它只是处理归它处理的请求而已。配置实例需求1:这是一个基于IP的虚拟主机使用实例一个项目数据应用,为了防止由于域名解析问题导致不能正常访问,因此采用IP的方式访问接口。比如::8080/ 这样的方式。虚拟主机的配置如下:1、在httpd.conf中Listen 80下面增加一行,内容为:Listen 8080,即监听8080端口2、配置

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论