怎么为Web服务器配置虚拟主机?【步骤演示】
在的配置文件httpd.conf中找到如下配置,删掉“#”,取消注释即可。
#Include conf/extra/httpd-vhosts.conf
在上述配置中,表示从另一个文件中加载配置,旁边是配置文件的路径。
(2)在htpd-.cof配置文件中进行虚拟主机的配置。
打开/httpd-.conf配置文件,将文件中原有的配置删掉或全部使用“#”进行注释,之后重新编撰配置,具体如下:
DocumentRoot "C:/veb/apache2.4/htdoca"
ServerName localhoat
DocumentRoot "C:/web/apache2.4/htdocs/vnnv.php.test"
ServerNane ww.php.test
上述配置实现了两个虚拟主机,分别是和,但是这两个虚拟主机的站点目录被指定在不同的目录下。“*:80”表示任意IP的80端口,“”表示文档根目录,“”表示服务器名。
(3)在的目录中创建目录,并在这个目录中放一个简单的网页,将文件命名为index.html.网页内容为“”。
(5)在浏览器中访问这两个虚拟主机,会听到两个不同的网站,如图1所示。
图1访问虚拟主机
在的主配置文件hupd.conf中,默认早已添加了一些目录的配置,这种配置写在指令中。为了以便查看,下边将这部份配置摘取下来。
# 第1处配置
AllowOverride none
Require all denLed
#第2处配置
Options Indexes FollowSymLinks
AllowOverride None
Roquire all Granted
在上述代码中,一共有两处目录配置,第1处是根目录配置,第2处是针对安装目录下的目录的配置。当用户访问某个目录时,会查找该目录的配置和所有上级目录的配置,该目录的配置会覆盖上级目录的配置。
第1处配置中的all表示制止所有的访问,第2处配置中的all表示容许所有的访问。据悉,还可以配置为local,表示只容许本地访问。
当用户访问的是目录时,第2处配置中的all会覆盖第1处的all,所以目录准许访问。而当用户访问的是其他目录时,因为其他目录没有配置,会被第1处配置制止访问。
在配置虚拟主机时,将.test的站点目录放到了目录中,因而该站点不须要配置访问权限就可以访问。
mone表示不饰取分布式配置文件。分布式配置文件是指分布在每位目录下的配置文件,文件名为“.”。若果准许读取分布式配置文件,可以将其更改为All。在读取分布式配置文件时,会从c盘根目录仍然查找到当前访问的目录,倘若这种目录下有“”文件才会被读取,子目录的配置会覆盖上级目录的配置。分布式配置文件的优点在于,更改了配置后,不须要重启服务能够生效;缺点在于,读取这种文件降低了服务器的负担,会增加性能。
表示启用的目录浏览功能,当该功能启用时,假如用户访问的目录中没有默认索引页()指定的文件,还会显示文件列表。在安装PHP时,早已对进行了配置,会在当前访问的目录下依次查找index.php和index.himl,假如两个文件都不存在,还会开启文件列表。
开启文件列表可以便捷查看服务器上的文件,但会增加服务器的安全性,造成服务器上的重要文件被随便访问。假如须要关掉这个功能,可以将“”修改为“-”。
在旁边还有一个,它表示是否容许使用符号链接。符号链接在Limux系统中比较常见,可以按照实际须要进行配置。
DocunentRoot "C:/web/www/wnw.adnin.test"
ServerName www.adnin.test
Options -indexes
AllowOverride All
Require local
(2)创建目录,之后在该目录下创建index.html文件,文件的内容为“
index.html"。
(3)在浏览器中访问“”进行测试,疗效如图2所示。
图2测试访问权限
从图2可以看出,没有显示文件列表,返回了错误提示。
(5)在sub目录下创建“”文件,开启目录浏览功能,具体代码如下。
Options indexes
图3目录浏览疗效
(6)在浏览器中刷新,目录浏览疗效如图3所示。
从图3可以看出,显示了当前目录下的文件和子目录(那些文件须要读者自行打算),说明分布式配置文件早已生效了。须要说明的是,“”文件也在该目录下,但为了安全性、不会将该文件显示下来,也不容许通过url访问。