默認apache是沒有安裝SSL模塊的,如果網站想以https方式訪問,則需要安裝並配置ssl模塊
第一步:下載ssl證書
不做介紹,下載完成后,證書一般包括3個文件
_public.crt文件是證書文件,
_chain.crt是證書鏈(中間證書)文件,
.key文件是證書的私鑰文件(申請證書時如果沒有選擇系統創建CSR,則沒有該文件)。
新創建一個文件夾'mkdir /etc/httpd/cert',把這些證書放入其中。
第二步:安裝mod_ssl.so模塊
打開apache的配置文件:/etc/httpd/conf/httpd.conf
搜索‘ssl’,如果沒有,就說明沒有安裝mod_ssl.so模塊
現在Apache都自帶了這個模塊,默認是不安裝的。安裝方式有靜態編譯和動態加載。
動態安裝我沒弄明白,所以采取了重新靜態安裝的方式
方法1:動態編譯:
無需重新編譯apache,使用whereis openssl查找openssl路徑,直接進入[source]/modules/ssl; 執行
[apache]/bin/apxs -a -i -c -L/usr/lib/openssl/engines/lib -c *.c -lcrypto -lssl -ldl
方法2:靜態安裝:
即在編譯安裝apache的時候,在./configure的時候添加--enable--ssl,這樣mod_ssl.so模塊就加載進了Apache。
方法3:使用yum方式安裝mod_ssl.so模塊(這個是最簡單的,也是最后我用的)
yum -y install mod_ssl
安裝完之后/etc/httpd/conf.d目錄下會出現一個ssl.conf文件
/etc/httpd/conf.d/ssl.conf編輯此文件,第59-60行釋放注釋如下:
DocumentRoot "/var/www/html" ServerName dshvv.com:443
第100行和107行配置如下:
... SSLCertificateFile /home/cert/_public.crt ... SSLCertificateKeyFile /home/cert/_dshvv.com.key
然后重啟apache就行了