Apache的配置由httpd.conf文件配置。
一、基本配置
ServerRoot "C:/apache" //你的apache软件安装的位置。其它指定的目录如果没有指定绝对路径,则目录是相对于该目录。
PidFile logs/httpd.pid #第一个httpd进程(所有其他进程的父进程)的进程号文件位置。
Listen 80 #服务器监听的端口号。
ServerName www.clusting.com:80 #主站点名称(网站的主机名)。
ServerAdmin admin@clusting.com #管理员的邮件地址。
DocumentRoot "C:/xampp/htdocs" #主站点的网页存储位置。
二、对主站点的目录访问控制
<Directory "C:/xampp/htdocs">
Options FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory>
- Options:配置特定目录使用那些特性,常用如下
- ExecCGI: 在该目录下允许执行CGI脚本
- FollowSymLinks: 在该目录下允许文件系统使用符号连接
- Indexes: 当用户访问该目录时,如果用户找不到DirectoryIndex指定的主页文件(例如index.html),则返回该目录下的文件列表给用户
- SymLinksIfOwnerMatch: 当使用符号连接时,只有当符号连接的文件拥有者与实际文件的拥有者相同时才可以访问
- AllowOverride
- None: 当AllowOverride被设置为None时。不搜索该目录下的.htaccess文件(可以减小服务器开销)
- All: 在.htaccess文件中可以使用所有的指令
- Order:控制在访问时Allow和Deny两个访问规则哪个优先
- Allow:允许访问的主机列表(可用域名或子网,例如:Allow from 192.168.0.0/16)
- Deny:拒绝访问的主机列表
三、别名设置
Alias /webpath /full/filesystem/path
#对该目录进行访问控制设置
<Directory "/var/www/download"> Options Indexes MultiViews AllowOverride AuthConfig Order allow,deny Allow from all </Directory>
四、虚拟主机配置
1.基于IP地址的虚拟机
Listen 80
<VirtualHost 172.20.30.40>
DocumentRoot /www/example1 ServerName www.example1.com </VirtualHost>2.基于IP和多端口的虚拟主机配置
Listen 172.20.30.40:80
Listen 172.20.30.40:8080 Listen 172.20.30.50:80 Listen 172.20.30.50:8080 <VirtualHost 172.20.30.40:80> DocumentRoot /www/example1-80 ServerName www.example1.com </VirtualHost> <VirtualHost 172.20.30.40:8080> DocumentRoot /www/example1-8080 ServerName www.example1.com </VirtualHost> <VirtualHost 172.20.30.50:80> DocumentRoot /www/example2-80 ServerName www.example1.org </VirtualHost> <VirtualHost 172.20.30.50:8080> DocumentRoot /www/example2-8080 ServerName www.example2.org </VirtualHost>