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 可知)