Apache 目录结构
检查配置文件语法错误
/usr/local/apache2/bin/apachectl –t
主配置文件httpd.conf全局参数
ServerRoot “/usr/local/apache2” 服务器目录的绝对路径
license 192.168.0.111:80 服务器接受改ip地址上的80端口请求
Loadmodule 指令
LoadModule expires_module modules/mod_expires.so 加载此模块后服务器允许通过配置文件控制HTTP的”Expires:” 和 “Cache-Control:”头内容
LoadModule rewrite_modulej modules/mod_rewrite.so 加载此模块后服务器要给予一定规则实时重写URL请求
LoadModule php5_module modules/libphp5.so 加载此模块后服务器将用户请求的PHP内容是用PHP模块处理
DirectoryIndex index.php index.html 直接访问目录时,将返回index.php / index.html页面
DirectoryIndex /yang/error.php 当访问的页面不存在时,将返回error.php页面
附件配置文件httpd-default.conf全局参数
附件配置文件httpd-mpm.conf全局参数
详情细说Php.pdf 第90页
所以linux 选择 prefirk MPM
MPM worker 详细设置请看细说Php.pdf 第91页
Apache服务器中使用配置段(容器)
文件系统容器
Alias/dir/ “/var/www/html/” #设置别名目录 /dir/ 对应的真实目录
<Directory“/var/www/html/”>
Options IndexesFollowSymLinks #Indexes允许目录被索引
Order allow,deny #顺序是先充许后被拒绝
allowfrom all
</Directory>
<Files "hellow.html">
Order deny,allow
Deny from all 拒绝apache中所有hellow.html被访问,嵌套在<Directory “/var/www/html/”>中使用,只拒绝/var/www/html/目录下的hellow.html
</Files>
Deny from all 拒绝访问以gif,jpg,jpeg,png结尾的文件
网络空间容器
<Location /pri>
Deny from all URL中以/pri开头的地址都会被拒绝
</location>
分布式配置文件 .htaccess
.htaccess虽然可以针对每个目录改变配置,但是启用.htaccess会导致性能下降或一些不安全因素
针对每个目录改变配置,量比较大,可以再每个目录中创建 .htaccess文件,然后管理此目录的人直接在改文件中写权限(deny,allow ..)即可。
AccessFileName .htaccess 主配置文件中开启该功能,默认在httpd-default.conf配置文件中已经开启
AllowOverride ALL/none all允许该目录使用.htaccess文件
设置虚拟主机
基于主机名的虚拟主机
1.使用bind 服务创建2个不同的域名,或者更改hosts文件
2.创建1个放置网页的目录,并给该目录的o 有rx 权限,或者更改为所属daemon用户(通过ps –aux |grep httpd 可知)