apache中虚拟主机的配置

一、两种方式:基于域名的虚拟主机和基于IP地址的的虚拟主机  (这里基于前者)

二、作用:实现在同一个web服务器下,同时运行很多个站点(项目)

三、虚拟主机的配置

  1、在核心配置文件中加载虚拟主机配置文件

Apache中,默认的提供了一个专门配置虚拟主机的配置文件  conf/extra/httpd-vhosts.conf,但是Apache在启动的时候只会读取核心配置文件conf/httpd.conf。因此,需要开启它:在httpd.conf中,找到Include  conf/extra/httpd-vhosts.conf,去掉前面的注释符"#"。

  2、在虚拟主机的配置文件中创建虚拟主机

<VirtualHost *:80>

  ServerName    //服务器名(域名)  例:www.itcast.com

  DocumentRoot  //文档根目录      例:"h:/jiuyeban/homepage"

</VirtualHost>

  3、配置浏览器端的域名解析

更改本地的hosts文件,将域名与IP地址对应起来。hosts文件路径为:C:\Windows\System32\drivers\etc\hosts,或者在运行里面输入:drivers,再进入etc也能找到hosts文件。

  注意:如果配置了虚拟主机,那么原来默认的文档根目录就发生了改变,被第一个虚拟主机所覆盖,如果不想被改变,要么修改要么重新再配置一个主机。

四、目录访问权限

  1、我们在访问某一个目录的时候,可能有三种情况:

    第一种:直接访问某个默认的页面;

    第二种:展示文件列表;

    第三种:Forbidden

  2、在Apache中,默认是deny from all,如果要开放某一个目录,需要单独进行配置。

<Directory  “目录”>

  Allow from all

DirectoryIndex  index.html  index.php  default.php   //配置索引页(设置默认首页)

Options Indexes    //允许展示列表(设置默认首页无法显示时,是否允许列出目录结构)

</Directory >

  为了方便管理,一般的做法是将该配置指令放和虚拟主机放在一起。

五、分散式配置文件

  1、分散到apache各个目录的配置文件,只针对该目录以及该目录的子目录有效。因为有些东西不希望用户能直接访问到,则单独设置权限。

    该分布式配置文件的名字:.htaccess

  2、.htaccess文件的特点:在此配置文件中对apache的配置不需要重新启动Apachc服务。

    主要作用:域名重定向、防盗链、自定义错误页面。

  .htaccess文件的优先级最高,可以书写任何主机相关的配置

3、在主配置文件(虚拟主机httpd-vhosts.conf)中,规定哪个目录可以使用分布式配置文件

  在对应的<Directory "目录"></Directory>中,使用Allowoverride设置是否开启外部的配置文件(.htaccess),all或者none

4、其他设置

  Order  //设置当前目录的访问权限

    Order allow , deny  //如果没有明确的允许项则全部拒绝

    Order deny , allow  //如果没有明确的拒绝项则全部允许

在Apache中,默认是deny from all,如果要开放某一个目录,需要单独进行配置。

时间: 2024-10-07 15:15:46

apache中虚拟主机的配置的相关文章

PHP中虚拟主机的配置

1.开启……/apache/conf/httpd.conf: 1 # Virtual hosts 2 #Include conf/extra/httpd-vhosts.conf 设置成: 1 # Virtual hosts 2 Include conf/extra/httpd-vhosts.conf 2.设置……\apache\conf\extra\httpd-vhosts.conf(可以设置多个主机) 1 <VirtualHost *:80> 2 DocumentRoot "D:/

《Apache之虚拟主机的配置》——RHEL6.3

1.安装httpd软件包: Yum install httpd 2.启动apache服务: [[email protected] Desktop]# /etc/init.d/httpd start Starting httpd:                                            [  OK  ] 3.安装mod-ssl软件包 [[email protected] Desktop]# yum install mod_ssl –y 4.创建一个/date/www/

ubuntu下的apache的虚拟主机的配置

ubuntu下的虚拟主机的配置相对window下的虚拟主机配置有些许不同. 对于要新建的虚拟主机,我们可以有如下几个步骤: 1.在/etc/apache2/sites-available/目录下新建一个你要配置主机的文件,打开他,进行配置: sudo vi /etc/apache2/sites-available/webQQ #这是webQQ的虚拟主机 <VirtualHost *:80> #虚拟主机的根目录 DocumentRoot /var/www/webQQ #主机名 ServerNam

Web服务器(Apache)虚拟主机的配置

一.定义    所谓虚拟主机是指在一台服务器里运行几个网站,提供WEB.FTP.Mail等服务.    二.虚拟主机的实现方法有三种:    基于IP的方法,基于主机名的方法和基于端口的法官法.    ①基于IP的方法:    在服务器里绑定多个IP,然后配置WEB服务器,把多个网站绑定在不同的IP上.访问不同的IP,就看到不同的网站.    ②基于端口的方法:    一个IP地址,通过不同的端口实在不同网站的访问.    ③基于主机名的方法: 设置多个域名的A记录,使它们解析到同一个IP地址上

记tomcat中虚拟主机的配置

在开发的时候都是直接把war包直接扔到tomcat的webapps目录下,通过localhost:8080/project来访问,但是在上线系统的部署,显然不可能通过www.xxx.com/project这样去访问的. 原来天真的认为域名是可以指向IP:端口/project这样的,今天去客户那部署发现完全不是那么回事,域名只能指向IP,于是马上求助度娘,找到如下方案. 在tomcat的conf/server.xml中,默认有个节点是 <Host name="localhost" 

windows下Apache的虚拟主机配置

1.Apache虚拟主机: 在Apache上有关于虚拟主机的具体说明,具体可以参考Apache手册,这里简单的说一下虚拟主机主要分为两种: 1.基于主机名的虚拟主机(一个IP地址,多个网站) 2.基于IP地址的虚拟主机(每个站点拥有一个的独立IP地址) 虽然是两种,但其实仔细比对,就能发现:基于主机名的其实非常像一个特殊的基于IP地址的方式,如何实现虚拟主机,思路是这样的: 2.windows下:  基于主机名  设置DNS(windows上的 / hosts文件),好让我们的域名被解析到特定的

win7下配置Apache本地虚拟主机

我们有时候从网上下载下来的php源码很多都是应用在网站根目录下的,而我们又想在本地先测试一遍确定没有问题了再上传空间,但一换到子目录下的时候因为路径问题,使得许多图片.内容都无法显示. 这个时候我们就需要营造一个根目录的环境去加载这些php源码,这就需要用到虚拟主机了.也就是将项目的子目录映射到一个域名中,当访问这个域名的时候相当于访问这个项目了.这样既能在本地运行项目,而且项目直接打包上传空间也能直接用了. 工具/原料 Apache服务器 方法/步骤 1.打开Apache的配置文件 httpd

Apache 动态虚拟主机配置

经常在开发中为Apache web server添加虚拟主机  方便多个项目的 同时运营,但是每次增加新的项目时 都得增加VirtualHost    部分,时间久了VirtualHost 部分也多了,看着头疼. NameVirtualHost 111.22.33.44 <VirtualHost 111.22.33.44> ServerName www.customer-1.com DocumentRoot /www/hosts/www.customer-1.com/docs ScriptAl

关于apache的虚拟主机配置

增加用户账号的验证 touch /data/.htpasswd [[email protected]]# htpasswd  -c  /data/.htpasswd  user1  #新增第一个账号 [[email protected]]# htpasswd   /data/.htpasswd  user2       #新增第二个账号 编辑/usr/local/apache2/conf/extra/httpd-vhosts.conf <VirtualHost *:80> # <Virt