目錄
-
虛擬主機配置
-
status狀態頁面
-
curl命令
-
mod_deflate模塊
-
https配置
-
httpd自帶應用程序
虛擬主機配置
有三種實現方案:
基于IP:
為每個虛擬主機準備至少一個IP地址
基于端口:
為每個虛擬主機使用至少一個獨立的port
局域FQDN:
為每個虛擬主機使用至少一個FQDN
注意:一般虛擬主機不要與中心主機混用; 因此,要使用虛擬主機,得先禁用’main’主機
禁用方法:注釋中心主機的DocumentRoot指令即可
虛擬主機配置方法
<VirtualHost IP:PORT> # 指明IP和端口
ServerName FQDN # 指明主機名
DocumentRoot "" # 網頁文檔路徑
</VirtualHost>
其它可用命令:
ServerAlias:虛擬主機的別名;可多次使用;
ErrorLog:錯誤日志
CustomLog:訪問日志
...
基于IP的虛擬主機示例
1.創建虛擬主機配置文件
2.為每個虛擬主機提供網頁文檔
3.測試
基于端口的虛擬主機
1.創建虛擬主機配置文件
2.確認三個端口都已經監聽
3.測試
基于主機名的虛擬主機
1.創建虛擬主機配置文件
2.在客戶端hosts文件中添加主機名解析
3.測試
配置status狀態頁
1.確保status_module模塊已加載
2.在配置文件中添加此項
3.測試
curl命令
curl是基于URL語法在命令行方式下工作的文件傳輸工具,它支持FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE及LDAP等協議。curl支持HTTPS認證,并且支持HTTP的POST、PUT等方法, FTP上傳, kerberos認證,HTTP上傳,代理服務器, cookies, 用戶名/密碼認證, 下載文件斷點續傳,上載文件斷點續傳, http代理服務器管道( proxy tunneling), 甚至它還支持IPv6, socks5代理服務器,,通過http代理服務器上傳文件到FTP服務器等等,功能十分強大。
curl [options] [URL...]
curl的常用選項:
-A/--user-agent <string> 設置用戶代理發送給服務器
--basic 使用HTTP基本認證
-e/--referer <URL> 來源網址
--cacert <file> CA證書 (SSL)
--compressed 要求返回是壓縮的格式
-H/--header <line>自定義首部信息傳遞給服務器
-I/--head 只顯示響應報文首部信息
--limit-rate <rate> 設置傳輸速度
-u/--user <user[:password]>設置服務器的用戶和密碼
-0/--http1.0 使用HTTP 1.0
-X, --request <command>:自定義請求方法
用法:curl [options] [URL...]
另一個工具:elinks
elinks [OPTION]... [URL]...
-dump: 不進入交互式模式,而直接將URL的內容輸出至標準輸出;
mod_deflate模塊
使用mod_deflate模塊壓縮頁面優化傳輸速度
適用場景:
(1) 節約帶寬,額外消耗CPU;同時,可能有些較老瀏覽器不支持;
(2) 壓縮適于壓縮的資源,例如文件文件;
SetOutputFilter DEFLATE
# mod_deflate configuration
# Restrict compression to these MIME types
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE text/css
# Level of compression (Highest 9 - Lowest 1)
DeflateCompressionLevel 9
# Netscape 4.x has some problems.
BrowserMatch ^Mozilla/4 gzip-only-text/html
# Netscape 4.06-4.08 have some more problems
BrowserMatch ^Mozilla/4\.0[678] no-gzip
# MSIE masquerades as Netscape, but it is fine
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
https協議
HTTPS(全稱:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全為目標的HTTP通道,簡單講是HTTP的安全版。即HTTP下加入SSL層,HTTPS的安全基礎是SSL,因此加密的詳細內容就需要SSL。
HTTPS和HTTP的區別
超文本傳輸協議HTTP協議被用于在Web瀏覽器和網站服務器之間傳遞信息。HTTP協議以明文方式發送內容,不提供任何方式的數據加密,如果攻擊者截取了Web瀏覽器和網站服務器之間的傳輸報文,就可以直接讀懂其中的信息,因此HTTP協議不適合傳輸一些敏感信息,比如信用卡號、密碼等。
為了解決HTTP協議的這一缺陷,需要使用另一種協議:安全套接字層超文本傳輸協議HTTPS。為了數據傳輸的安全,HTTPS在HTTP的基礎上加入了SSL協議,SSL依靠證書來驗證服務器的身份,并為瀏覽器和服務器之間的通信加密。
SSL會話的簡化過程
(1) 客戶端發送可供選擇的加密方式,并向服務器請求證書;
(2) 服務器端發送證書以及選定的加密方式給客戶端;
(3) 客戶端取得證書并進行證書驗正:
如果信任給其發證書的CA:
(a) 驗正證書來源的合法性;用CA的公鑰解密證書上數字簽名;
(b) 驗正證書的內容的合法性:完整性驗正
(c) 檢查證書的有效期限;
(d) 檢查證書是否被吊銷;
(e) 證書中擁有者的名字,與訪問的目標主機要一致;
(4) 客戶端生成臨時會話密鑰(對稱密鑰),并使用服務器端的公鑰加密此數據發送給服務器,完成密鑰交換;
(5) 服務用此密鑰加密用戶請求的資源,響應給客戶端;
注意:SSL會話是基于IP地址創建;所以單IP的主機上,僅可以使用一個https虛擬主機;
配置httpd支持https
(1) 為服務器申請數字證書;
測試:通過私建CA發證書
(a) 創建私有CA
(b) 在服務器創建證書簽署請求
(c) CA簽證
(2) 配置httpd支持使用ssl,及使用的證書;
# yum -y install mod_ssl
配置文件:/etc/httpd/conf.d/ssl.conf
DocumentRoot
ServerName
SSLCertificateFile
SSLCertificateKeyFile
https配置實現
1.安裝mod_ssl包,配置http支持https
[root@centos7 ~]# yum -y install mod_ssl
[root@centos7 ~]# httpd -M | grep ssl
ssl_module (shared)
[root@centos7 ~]#
2.建立私有CA
(1)生成私鑰
(2)生成自簽證書
(3)為CA提供所需的目錄及文件
3.在服務器端創建簽署請求,CA簽證
(1)生成私鑰
[root@centos7 ~]# mkdir /etc/httpd/ssl
[root@centos7 ~]# cd /etc/httpd/ssl
[root@centos7 ssl]# (umask 077; openssl genrsa -out /etc/httpd/ssl/httpd.key 2048)
(2)生成簽署請求
(3)CA簽證
[root@centos7 ssl]# openssl ca -in httpd.csr -out /etc/httpd/ssl/httpd.crt -days 365
4.配置httpd支持ssl
5.客戶端驗證
http自帶應用程序
htpasswd:basic認證基于文件實現,用于生成賬號和密碼的程序;
-c:自動創建此處指定的文件,因此,僅應該在此文件不存在時使用
-m:md5格式加密
-s:sha格式加密
-D:刪除指定用戶
apachectl:httpd自帶的服務控制腳本,支持start和stop等子命令;
apxs:- APache eXtenSion tool
為httpd增添模塊的;
rotatelogs:日志切割
access_log,
access_log, access_log.1, ...
ab - web service的壓力測試工具
ab [OPTIONS] [http[s]://]hostname[:port]/path
請求數:[ -n requests ]
并發數:[ -c concurrency ]
長連接:[ -k ]
原創文章,作者:zhai796898,如若轉載,請注明出處:http://www.www58058.com/55277