apache官網: http://www.apache.org/
主要特點:
開放源代碼,跨平臺應用,支持各種Web編程語言。
模塊化設計,運行穩定,良好的安全性。
注意: #爲root用戶的命令提示符, // 爲註釋。
安裝httpd服務器步驟:
準備環境:
RHEL6.5系統: IP地址 192.168.1.10
配置yum源
#mount /dev/cdrom /media/ //掛載本地鏡像。
#vim /etc/yum.repos.d/yum.repo
//編輯yum工具使用的軟件倉庫文件。
[yum] //倉庫類別
name=rhel6.5 //倉庫名稱(說明)
baseurl=file:///media/ //URL訪問路徑
enabled=1 //啓用此軟件倉庫
gpgcheck=0 //驗證軟件包簽名
gpgkey= ? //GPG公鑰文件的位置,可不寫入文件。
安裝httpd所依賴的環境:
# rpm -qa | grep gcc* //檢查與gcc相關的軟件包是否安裝。
# yum -y install gcc gcc-c++ make automake //安裝
# rpm -e httpd --nodeps //卸載用rpm安裝的httpd軟件包。
# tar -zxvf httpd-2.2.17.tar.gz -C /usr/src/ //解壓httpd軟件包。
# cd /usr/src/httpd-2.2.17/ //切換到解壓後的源碼目錄。
# ./configure --prefix=/usr/local/httpd/ //配置,指定httpd安裝目錄。
--enable-so //啓用動態加載模塊支持。
--enable-charset-lite //啓用字符集支持,支持使用各種字符集編碼。
--enable-rewrite //啓用網頁地址重寫功能,網站優化和目錄遷移維護。
--enable-cgi //啓用CGI腳本程序支持,擴展網站的應用訪問能力。
#make //編譯,將源代碼轉換爲可執行程序。
#make install //編譯完畢後,複製到安裝目錄。
httpd目錄的用途:
#ls /usr/local/httpd/
bin : 存放服務的各種執行程序文件。
conf : 存放服務的各種配置文件。
htdocs : 存放網頁文檔。
logs : 存放服務的日誌文件。
modules : 存放服務的各種模塊文件。
cgi-bin : 存放各種CGI程序文件。
# ln -s /usr/local/httpd/bin/* /usr/local/bin/ //優化執行路徑。
#httpd -v //查看httpd服務版本。
# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
//建立httpd服務的腳本。
#vim /etc/init.d/httpd //編輯服務腳本
#!/bin/bash //腳本聲明
#chkconfig:235 67 78 //服務識別參數,級別,啓動和關閉的順序。
#description: this is apache server //服務描述。
# ls -ldh /etc/init.d/httpd //查看是否有執行權限。
# chkconfig --add httpd //添加爲系統服務。
# chkconfig httpd on //設置開機自啓動。
#chkconfig --list httpd //查看服務自啓動狀態。
配置並啓動httpd服務:
# vim /usr/local/httpd/conf/httpd.conf
ServerName www.yuan.com //添加一個web站點的域名。
#apachectl -t //語法檢查。
#/etc/init.d/httpd start //啓動服務。
# netstat -anpt | grep httpd //檢查服務的端口。
#cat /usr/local/httpd/htdocs/index.html //查看網頁首頁。
# firefox http://192.168.1.10 //驗證訪問,出現It works!界面,即成功。
查看web站點的訪問情況:
訪問日誌(access_log) : 記錄IP地址,日期時間,請求的網頁對象。
錯誤日誌(error_log):記錄日期時間,錯誤事件類型,錯誤事件內容描述。
主配置文件httpd.conf的內容:
全局配置項:
ServerRoot : 設置httpd服務的根目錄(安裝目錄)
Listen : 監聽的網絡端口號,80.
User : 運行httpd進程時的用戶身份,默認daemon.
Group : 運行httpd進程時的組身份,默認daemon.
ServerAdmin : 設置管理員E-mail地址。
ServerName:設置web站點的域名。
DocumentRoot:設置網站根目錄。
DirectoryIndex:設置網站的默認索引頁。
ErrorLog: 設置錯誤日誌文件的路徑。
LogLevel : 記錄日誌的級別。默認級別爲warn(警告).
CustomLog :設置訪問日誌文件的路徑,日誌類型。
PidFile : 設置用於保存httpd進程號(PID)文件。
CharsetDefault :設置網頁默認使用的字符集編碼。
Include:包含另一個配置文件的內容。
區域配置項:
<Directory "/usr/local/httpd/htdocs"> //定義網頁的根目錄開始。
Options FollowSymLinks //控制選項,允許使用符號鏈接。
AllowOverride None //不允許隱含控制文件中的覆蓋配置。
Order allow,deny //訪問控制策略的應用順序。
Allow from all //允許任何人訪問該區域。
</Directory> //定義區域的結束。