Apache配置命令
1、DocumentRoot——网站根目录
注意:e:\www目录必须存在,路径上不能包含中文。
2、DirectoryIndex——默认首页设置
多个首页文件之间用“空格”隔开。
如果首页文件都不存在,则会显示目录列表。
3、listen命令
当Apache启动以后,是侦听哪个IP的哪个端口的访问。
侦听自己网卡的IP的端口。
一台主机可以有多个网卡。一个网卡可以设置多个IP地址。
格式:listen IP地址[:端口号]
举例:listen 80 //侦听所有IP的80端口的请求
listen 192.168.40.52 //侦听192.168.40.52所有端口的请求
listen 192.168.40.52:80 //侦听192.168.40.52IP地址的80端口
<Directory></Directory>——目录权限
DocumentRoot “E:\www”
<Directory “E:\www”>
Options Indexes|none|all
Order Deny,Allow
Deny From All
Allow From 192.168.40.52
</Directory>
l Options:指定目录具有哪些特性,取值:none、all、indexes
u None:禁止所有IP访问。
u All:拥有所有权限
u Indexes:如果首页不存在,显示目录列表。
l Order:Deny(禁用)和Allow(允许)的执行顺序。
u 举例:Order deny,allow
l Deny:禁止哪些IP访问。
u Deny from All //禁止所有的IP访问
u Deny from 192.168.10.25 //禁止192.168.10.25的IP访问我的主机
l Allow:允许哪些IP访问
u Allow from all //允许所有IP访问
u Allow from 127.0.0.1 //只允许我自己访问
虚拟主机的概念
将一块磁盘分成若干个小空间,对外出租。每个小空间,具有网站的所有功能。
虚拟主机的配置过骤
第一步:配置本地的DNS文件(hosts)
文件路径:C:\Windows\System32\drivers\etc\hosts
第二步:Apache的主配置文件(httpd.conf)
文件路径:C:\Program Files (x86)\phpStudy\Apache2\conf\httpd.conf
NameVirtualHost是配置基于域名的虚拟主机最重要的一个命令。换句话说:就是指为哪个IP的什么端口配置虚拟主机。这里的IP地址是自己网卡,不是别人的。
通过include命令,将虚拟主机的配置文件加载进来。
第三步:Apache的虚拟主机的配置文件(vhosts.conf)
文件路径:C:\Program Files (x86)\phpStudy\Apache2\conf\vhosts.conf
在vhosts.conf中使用<VirtualHost></VirtualHost>来定义多个虚拟主机
配置完虚拟主机后,为什么localhost访问路径被更改了?
虚拟主机配置的优先级,高于httpd.conf中的全局配置。
当访问一个hosts中定义的域名时,但这个域名并没有做虚拟主机配置,那么,此时这个域名将指向第1个虚拟主机。
当配置完虚拟主机后,原来localhost访问路径被修改了,原因也是:第1个虚拟主机的优先级最高。