linux服務器配置ch03apache與管理_第1頁
linux服務器配置ch03apache與管理_第2頁
linux服務器配置ch03apache與管理_第3頁
linux服務器配置ch03apache與管理_第4頁
linux服務器配置ch03apache與管理_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

第3講Apache服務器配置與管理TheNumberOneHTTPServerOnTheInternet主要內(nèi)容Web服務概述Apache服務器安裝Apache服務器Apache服務器的基本配置使用Webalizer進行日志統(tǒng)計分析Web服務概述Web服務是Internet中最為重要的應用Web服務采用客戶端/服務器模型客戶端為瀏覽器,它提供了良好、統(tǒng)一的用戶界面。瀏覽器的作用為解釋和顯示W(wǎng)eb頁面,響應用戶的輸入請求,并通過HTTP協(xié)議將用戶請求傳遞給Web服務器Web服務器運行服務器程序,最基本的功能是偵聽和響應客戶端的HTTP請求,向客戶端發(fā)出請求處理結(jié)果信息HTTP協(xié)議的默認端口為80Apache服務器從1996年4月以來,Apache已經(jīng)成為Internet上最流行的Web服務器根據(jù)著名的Web服務器調(diào)查公司Netcraft的調(diào)查結(jié)果,截至2005年10月,Apache的市場占有率為69.89%,而同期IIS的市場占有率為20.55%Apache的優(yōu)點跨平臺。能運行在UNIX、Linux和Windows等多種操作系統(tǒng)平臺上無限可擴展性。借助開放源代碼開發(fā)模式的優(yōu)勢,全世界的許多程序員為Apache編寫了許多功能模塊工作性能和穩(wěn)定性遠遠領先于其他同類產(chǎn)品安裝Apache服務器查詢系統(tǒng)是否安裝了Apacherpm-qa|grephttpdRedpacketmanager-queryall|grep(過濾器)httpd(守護進程)檢測配置網(wǎng)卡:Setup重啟網(wǎng)絡Servicenetworkrestart查詢命令在哪?Whichls如果沒有安裝,則插入RHEL4的第2張安裝盤,運行如下命令進行安裝rpm-vih/media/cdrom/Redhat/RPMS/httpd-2.0.52-19.ent.i386.rpm啟動Apache服務器 servicehttpdrestart或者etc/init.d/httpdrestart(Etc目錄為配置文件所在目錄)檢測配置文件的語法servicehttpdconfigtest測試Apache服務器注意:防火墻的配置Apache服務器的基本配置默認的配置文件信息http.conf文件的格式Web服務的基本配置個人目錄創(chuàng)建虛擬目錄設置目錄權(quán)限用戶認證虛擬主機配置頁面重定向使用SSL配置一個安全的Web服務器默認的配置文件信息主配置文件:/etc/httpd/conf/http.conf服務器的根目錄(ServerRoot):/etc/httpd根文檔目錄(DocumentRoot):/var/www/html訪問日志文件:/etc/httpd/logs/access_log錯誤日志文件:/etc/httpd/logs/error_log模塊存放路徑:/etc/httpd/moduleshttpd.conf文件的格式httpd.conf配置文件主要由全局環(huán)境、主服務器配置和虛擬主機3個部分組成配置語句的語法格式:配置參數(shù)名稱 參數(shù)值檢查httpd.conf的語法是否正確apachectlconfigtest或者servicehttpdconfigtestWeb服務的基本配置(1)主目錄的路徑(DocumentRoot)Vi中搜索:/DocumentRootVi中n上一個N下一個1G到第一行默認位置:/var/www/html可以將需要發(fā)布的網(wǎng)頁放在這個目錄下默認文檔在瀏覽器中,輸入Web站點的IP地址或域名即顯示出來的Web頁面DirectoryIndexindex.htmlindex.htmindex.phpindex.html.var配置Apache監(jiān)聽的IP地址和端口號Listen 80(在本機所有可用IP地址上監(jiān)聽TCP80端口)只監(jiān)聽IP地址為77的80端口和78的8080端口 Listen7780 Listen788080Web服務的基本配置(2)設置相對根目錄路徑相對根目錄通常是Apache存放配置文件、日志文件、模塊文件等的地方。在默認情況下,相對目錄為/etc/httpd,它一般包含conf和logs子目錄 ServerRoot“/etc/httpd”設置日志文件錯誤日志 ErrorLoglogs/error_log(位于目錄/var/httpd)訪問日志CustomLoglogs/access_logcombinedWeb服務的基本配置(3)設置網(wǎng)絡管理員的Email地址ServerAdmin 設置Apache服務器自身的主機名ServerName22:80設置默認字符集AddDefaultCharsetGB2312(避免出現(xiàn)中文亂碼)創(chuàng)建虛擬目錄如果希望在主目錄以外其他目錄中進行網(wǎng)頁發(fā)布,需要設置虛擬目錄使用虛擬目錄的特點便于訪問便于移動站點中的目錄能靈活加大磁盤空間安全性好,可設置不同的訪問權(quán)限使用Alias選項創(chuàng)建虛擬目錄Alias /icons/“/var/www/icons/”Alias/ftp“/var/ftp”設置目錄權(quán)限(1)可以使用<Directory目錄路徑>和</Directory>為主目錄或虛擬目錄設置權(quán)限例子:<Directory“/var/www/icons”> OptionsIndexesMultiViewsAllowOverrideNoneOrderallow,denyAllowfromall</Directory>設置目錄權(quán)限(2)Options:定義目錄使用哪些特性Indexes:允許目錄瀏覽(通常應該禁用此功能)MultiViews:允許Contentnegotiation的多視圖All:包含除了MultiViews之外的所有特性。如果沒有Options語句,默認為AllExecCGI:允許執(zhí)行CGI腳本FollowSymLinks:可以在該目錄中使用符號鏈接AllowOverride:定義位于每個目錄下的.htaccess(訪問控制)文件中的指令類型出于效率和安全的原因,通常應該避免使用.htaccessAllowOverrideNone注意:為了讓主目錄允許目錄瀏覽,需要刪除/etc/httpd/conf.d目錄下的e.conf文件,然后重啟Apache。(這里不能將e.conf重命名為e2.conf,為什么?)設置目錄權(quán)限(3)Order:設置默認的訪問權(quán)限和Allow和Deny語句的處理順序Orderallow,deny默認禁止所有客戶端的訪問,且Allow語句在Deny語句之前被匹配。如果某條件同時匹配Deny和Allow語句,則Deny語句起作用(Allow語句被覆蓋)Orderdeny,allow默認允許所有客戶端的訪問,且Deny語句在Allow語句之前被匹配。如果某條件同時匹配Deny和Allow語句,則Allow語句起作用(Deny語句被覆蓋)例1:允許所有客戶端訪問Orderallow,denyAllowfromall設置目錄權(quán)限(4)例2:除了來自域和IP地址為11的客戶端外,允許其他所有客戶端訪問Orderdeny,allowDenyfromDenyfrom11例3:僅允許來自網(wǎng)絡/24的客戶端訪問Orderallow,denyAllowfrom/24設置目錄權(quán)限(5)例4:僅允許來自網(wǎng)絡/24的客戶端訪問,但是IP地址為11的客戶端除外Orderallow,denyAllowfrom/24Denyfrom11對比如下的配置Orderdeny,allowAllowfrom/24Denyfrom11上述3條語句實際上允許所有的客戶進行訪問用戶認證(1)用戶認證是保護網(wǎng)絡系統(tǒng)資源的第一道防線,控制著所有登錄并檢查訪問用戶的合法性,其目標是僅讓合法用戶以合法的權(quán)限訪問網(wǎng)絡系統(tǒng)資源例子假設有一個名為myscret的虛擬目錄,其對應的物理路徑是/usr/local/myscret,現(xiàn)需要對其啟用用戶認證功能,只允許用戶linden和tom訪問用戶認證(2)建立口令文件要實現(xiàn)用戶認證功能,首先需要建立保存用戶名和口令的文件Apache自帶的htpasswd提供了建立和更新存儲用戶名、密碼的口令文件的功能注意:口令文件必須放在不能被網(wǎng)絡訪問的位置,以避免被下載本例中將口令文件放在/etc/httpd目錄下,文件名為mysecretpwdhtpasswd-c/etc/httpd/mysecretpwdlinden(c表示創(chuàng)建新文件)htpasswd/etc/httpd/mysecretpwdtom如果要刪除用戶,可以直接刪除認證口令文件中相應的行用戶認證(3)建立虛擬目錄并配置用戶認證在Apache的主配置文件httpd.conf文件中,加入以下語句Alias/mysecret“/var/local/mysecret”<Directory“/var/local/mysecret”> AuthTypeBasicAuthname“Thisisaprivatedirectory.PleaseLogin”AuthUserFile/etc/httpd/mysecretpwdRequireuserlindentom #Requirevalid-user(授權(quán)給認證口令文件中的所有用戶)</Directory>建立虛擬目錄/var/local/mysecretmkdir /var/local/mysecretchcon-thttpd_sys_content_t/var/local/mysecret(激活SELinux時)echo“TestPage”>/var/local/mysecret/index.html用戶認證(4)測試用戶認證重啟httpd服務 servicehttpdrestart在客戶端瀏覽器中,測試虛擬目錄用戶認證(4)創(chuàng)建認證用戶組添加認證用戶admin htpasswd/etc/httpd/mysecretpwdadmin創(chuàng)建認證組文件/etc/httpd/authgroup,內(nèi)容如下 administrator:admin mysecret:lindentom注意:在認證組文件中指定的用戶名,必須先添加到認證口令文件中虛擬主機配置虛擬主機的優(yōu)點基于IP的地址的虛擬主機基于域名的虛擬主機虛擬主機的優(yōu)點節(jié)約投資節(jié)約維護費用可以獲得專業(yè)的維護而無需維護人員與昂貴的電源系統(tǒng)擁有更加穩(wěn)定的性能基于IP的地址的虛擬主機(1)相同IP地址,不同端口號的虛擬主機例子Listen6666Listen8888<VirtualHost22:6666> ServerName22:6666 ServerAdmin DocumentRoot“/var/www/web1” DirectoryIndexindex.html ErrorLoglogs/web1/error_log CustomLoglogs/web1/access_logcombined</VirtualHost><VirtualHost22:8888> ServerName22:8888 ServerAdmin DocumentRoot“/var/www/web2” DirectoryIndexindex.html ErrorLoglogs/web2/error_log CustomLoglogs/web2/access_logcombined</VirtualHost>基于IP的地址的虛擬主機(2)不同IP相同,端口號的虛擬主機安裝多塊物理網(wǎng)卡,對每塊網(wǎng)卡配置不同的IP地址在一塊網(wǎng)卡上綁定多個IP地址配置虛擬網(wǎng)卡ifconfigeth0:011upifconfigeth0:122up例子<VirtualHost11:80> ServerName11:80 ServerAdmin DocumentRoot“/var/www/web1” DirectoryIndexindex.html ErrorLoglogs/web1/error_log CustomLoglogs/web1/access_logcombined</VirtualHost><VirtualHost22:80> ServerName22:80 ServerAdmin DocumentRoot“/var/www/web2” DirectoryIndexindex.html ErrorLoglogs/web2/error_log CustomLoglogs/web2/access_logcombined</VirtualHost>基于域名的虛擬主機(1)場景例子假設Apache服務器的IP地址為22,所在的域為現(xiàn)需要使用域名abc.、yz.分別建立兩臺虛擬主機,每臺虛擬主機都對應不同的主目錄在域的DNS服務器的正向解析文件.zone中添加如下A資源記錄 abcINA22 xyzINA22也可以在上述文件的最后直接添加如下的泛域名解析資源記錄 *.. INA22基于域名的虛擬主機(2)在Apache的主配置文件httpd.conf中,添加如下語句NameVirtualHost22<VirtualHostabc.>#虛擬主機abc. ServerNameabc.:80 ServerAdmin DocumentRoot“/var/www/web1” DirectoryIndexindex.html ErrorLoglogs/web1/error_log CustomLoglogs/web1/access_logcombined</VirtualHost>基于域名的虛擬主機(3)<VirtualHostxyz.>#虛擬主機xyz. ServerNamexyz.:80 ServerAdmin DocumentRoot“/var/www/web2” DirectoryIndexindex.html ErrorLoglogs/web2/error_log CustomLoglogs/web2/access_logcombined</VirtualHost>創(chuàng)建相應的documentroot目錄mkdir/var/www/web1mkdir/var/www/web2基于域名的虛擬主機(4)創(chuàng)建相應的log目錄mkdir/etc/httpd/logs/web1mkdir/etc/httpd/logs/web2創(chuàng)建響應的主頁echo“web1’smainpage”>/var/www/web1/index.htmlecho“web2’smainpage”>/var/www/web2/index.html在瀏覽器中測試基于域名的虛擬主機(5)注意事項如果在瀏覽器中輸入原有的地址www.,將解析abc.的主頁因為設置虛擬主機后,Apache將按虛擬主機的域名來解析瀏覽器中輸入的域名地址,并且第一個虛擬主機的優(yōu)先級最高,而www.不匹配兩個虛擬主機的地址,因此將按第一個虛擬主機解析如果仍然需要按正常的方式解析www.,那么需要為它建立一個新的虛擬主機如果在其他目錄創(chuàng)建documentroot和log目錄,需要注意SELinux安全機制問題頁面重定向當站點的結(jié)構(gòu)更新后,為了方便用戶繼續(xù)使用原來的URL訪問,需要使用頁面重定向使用Redirect指令配置頁面重定向語法:Redirect[錯誤響應代碼]用戶請求的URL[重定向的URL]例子:當月的新聞存放在news目錄下的子文件夾中,如6月的新聞存放在news/jun目錄下,當六月過去后,管理員將jun目錄移動到old-news目錄下,同時在文件httpd.conf中添加如下語句將訪問news/jun的URL重定向到old-newsRedirect303/news/jun頁面重定向時的錯誤響應代碼代碼說明301告訴用戶,請求的URL已經(jīng)永久地移動到新的URL,用戶可以記住新的URL302告訴用戶,請求的URL已經(jīng)臨時地移動到新的URL,用戶無需記住新的URL。此值為默認值303告訴用戶,頁面已經(jīng)被替換,用戶應該記住新的URL410告訴用戶,請求的頁面已經(jīng)不存在。使用此代碼時,不應該使用重定向的URL參數(shù)使用Webaliz

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論