httpd-2.2和httpd-2.4安装部署
http簡(jiǎn)介
httpd是Apache超文本傳輸協(xié)議(HTTP)服務(wù)的主程序。被設(shè)計(jì)為一個(gè)獨(dú)立運(yùn)行的后臺(tái)進(jìn)程它會(huì)建立一個(gè)處理請(qǐng)求的子進(jìn)程或線程的池
?
一次完整的http請(qǐng)求的處理過程
????(1) 建立或處理連接
????(2) 接收請(qǐng)求
????(3) 處理請(qǐng)求
????(4) 訪問資源
????(5) 構(gòu)建響應(yīng)報(bào)文
????(6) 發(fā)送響應(yīng)報(bào)文
????(7) 記錄于日志中
http協(xié)議請(qǐng)求方法
GET????? 請(qǐng)求指定的頁(yè)面信息并返回資源主體
HEAD????? 類似于GET請(qǐng)求只不過返回的響應(yīng)中沒有具體的內(nèi)容用于獲取HTTP首部
POST????? 向指定服務(wù)器提交表單數(shù)據(jù)進(jìn)行處理請(qǐng)求。請(qǐng)求報(bào)文主體種包含了要傳遞的數(shù)據(jù)信息內(nèi)容。POST請(qǐng)求可能會(huì)導(dǎo)致新的資源的建立和/或已有資源的修改。
PUT????? 從客戶端向服務(wù)器上傳可取代指定的文檔的內(nèi)容的數(shù)據(jù)資源。
DELETE???? 請(qǐng)求服務(wù)器刪除指定的資源。
CONNECT??? HTTP/1.1協(xié)議中預(yù)留給能夠?qū)⑦B接改為管道方式的代理服務(wù)器。
OPTIONS??? 允許客戶端查看服務(wù)器的性能。
http協(xié)議響應(yīng)
HTTP響應(yīng)也是由三個(gè)部分組成分別是狀態(tài)行、消息報(bào)頭、響應(yīng)正文
1、狀態(tài)行格式如下
HTTP-Version Status-Code Reason-Phrase
其中HTTP-Version表示服務(wù)器HTTP協(xié)議的版本Status-Code表示服務(wù)器發(fā)回的響應(yīng)狀態(tài)代碼Reason-Phrase表示狀態(tài)代碼的文本描述。
狀態(tài)代碼有三位數(shù)字組成第一個(gè)數(shù)字定義了響應(yīng)的類別且有五種可能取值
1xx指示信息--表示請(qǐng)求已接收繼續(xù)處理
2xx成功--表示請(qǐng)求已被成功接收、理解、接受
3xx重定向--要完成請(qǐng)求必須進(jìn)行更進(jìn)一步的操作
4xx客戶端錯(cuò)誤--請(qǐng)求有語(yǔ)法錯(cuò)誤或請(qǐng)求無(wú)法實(shí)現(xiàn)
5xx服務(wù)器端錯(cuò)誤--服務(wù)器未能實(shí)現(xiàn)合法的請(qǐng)求
常見狀態(tài)代碼、狀態(tài)描述、說(shuō)明
200 OK????? //客戶端請(qǐng)求成功
400 Bad Request? //客戶端請(qǐng)求有語(yǔ)法錯(cuò)誤不能被服務(wù)器所理解
401 Unauthorized //請(qǐng)求未經(jīng)授權(quán)這個(gè)狀態(tài)代碼必須和WWW-Authenticate報(bào)頭域一起使用?
403 Forbidden? //服務(wù)器收到請(qǐng)求但是拒絕提供服務(wù)
404 Not Found? //請(qǐng)求資源不存在eg輸入了錯(cuò)誤的URL
500 Internal Server Error //服務(wù)器發(fā)生不可預(yù)期的錯(cuò)誤
503 Server Unavailable? //服務(wù)器當(dāng)前不能處理客戶端的請(qǐng)求一段時(shí)間后可能恢復(fù)正常
httpd特點(diǎn)
httpd功能特性
CGI (Common Gateway Interface)
虛擬主機(jī)
基于IP
基于PORT
基于HOSTNAME
反向代理
負(fù)載均衡
????
路徑別名
豐富的用戶認(rèn)證機(jī)制
basic
digest
支持第三方模塊
httpd-2.2虛擬主機(jī)配置
CentOS 6默認(rèn)提供的httpd-2.2版本
Httpd安裝
yum?–y?install?httpd查看httpd安裝與否
[root@www?~]#?rpm?-qa?|?grep?httpd httpd-2.2.15-54.el6.centos.x86_64 httpd-tools-2.2.15-54.el6.centos.x86_64查看httpd安裝路徑
[root@www?conf.d]#?rpm?-ql?httpd?|?less /etc/httpd /etc/httpd/conf??????//httpd的配置文件路徑 /etc/httpd/conf.d????//httpd的配置文件路徑 /etc/httpd/conf.d/README /etc/httpd/conf.d/welcome.conf /etc/httpd/conf/httpd.conf /etc/httpd/conf/magic? /etc/httpd/logs???????//httpd的日志文件路徑 /etc/httpd/modules???//httpd的模塊路徑 /etc/httpd/run /etc/logrotate.d/httpd /etc/rc.d/init.d/htcacheclean /etc/rc.d/init.d/httpd???//httpd的服務(wù)文件 /etc/sysconfig/htcacheclean /etc/sysconfig/httpd /usr/lib64/httpd /usr/lib64/httpd/modules /usr/lib64/httpd/modules/mod_actions.so /usr/lib64/httpd/modules/mod_alias.so配置虛擬主機(jī)
配置httpd的basic認(rèn)證添加httpd認(rèn)證用戶
也可以配置httpd的basic基于組的認(rèn)證
vim?/etc/httpd/conf/.htgrp mygrps:?user1?user2虛擬主機(jī)配置
開啟httpds支持,需要安裝mod_ssl模塊
查看是否安裝ssl
httpd?-M?|?grep?ssl yum?–y?install?mod_ssl [root@www?conf]#?httpd?-M?|?grep?ssl ssl_module?(shared)httpds 配置
[root@www?ssl]#?(umask?077;?openssl?genrsa?-out?httpd.key?2048) Generating?RSA?private?key,?2048?bit?long?modulus ...............+++ ..........+++生成證書簽署請(qǐng)求
????
CA服務(wù)器簽署證書
[root@ca?CA]#?openssl?ca?-in?/tmp/httpd.csr-out?/etc/pki/CA/certs/httpd.crt?-days?365 Using?configuration?from/etc/pki/tls/openssl.cnf Check?that?the?request?matches?the?signature Signature?ok Certificate?Details:Serial?Number:?1?(0x1)ValidityNot?Before:?Jul?21?04:15:40?2016?GMTNot?After?:?Jul?21?04:15:40?2017?GMTSubject:countryName???????????????=?CNstateOrProvinceName???????=BeijingorganizationName??????????=?RunnerorganizationalUnitName????=?OpscommonName????????????????=?myadmin.runner.vipemailAddress??????????????=myadmin@runner.vipX509v3?extensions:X509v3?Basic?Constraints:?CA:FALSENetscape?Comment:?OpenSSL?Generated?CertificateX509v3?Subject?Key?Identifier:?3D:63:98:25:9D:9E:6E:AD:87:58:4E:6B:82:AE:90:AE:DE:77:18:B7X509v3?Authority?Key?Identifier:?keyid:9B:65:F4:88:E7:A7:10:0F:82:7C:1A:AB:40:83:E3:5A:AE:CA:72:0ECertificate?is?to?be?certified?until?Jul?2104:15:40?2017?GMT?(365?days) Sign?the?certificate??[y/n]:y1?out?of?1?certificate?requests?certified,commit??[y/n]y Write?out?database?with?1?new?entries Data?Base?Updated虛擬主機(jī)2
/etc/httpd/conf.d/ssl.conf?主要配置LoadModule?ssl_module?modules/mod_ssl.so Listen?443 <VirtualHost?_default_:443> DocumentRoot"/data/vhosts/myadmin" ServerName?myadmin.runner.vip:443 ErrorLog?logs/ssl_error_log TransferLog?logs/ssl_access_log <Directory"/data/vhosts/myadmin">Options?NoneAllowOverride?None###禁止192.168.99.51訪問第一種做法#Order?deny,allow#Deny?from?192.168.99.51###禁止192.168.99.51訪問第二種做法Order?allow,denyAllow?from?allDeny?from?192.168.99.51 </Directory> SSLCertificateFile?/etc/httpd/ssl/httpd.crt SSLCertificateKeyFile?/etc/httpd/ssl/httpd.key訪問myadmin.runner.vip測(cè)試
轉(zhuǎn)載于:https://blog.51cto.com/runingday/1828350
總結(jié)
以上是生活随笔為你收集整理的httpd-2.2和httpd-2.4安装部署的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: eclipse 安装svn插件
- 下一篇: 一个失败的操作系统MULTICS