Apache配置https小程序
以前一直用的是Tomcat,今天忽然接到任務要給Apache配置https證書,由於小程序要用。下面把過程列出來以備後續查看。安全
1.首先你得有ssl證書,沒有的能夠去購買,買完以後下載證書,建議選擇適配Apache的文件下載。個人下載下來的文件是一個壓縮文件,解壓後截圖以下:服務器
這三個文件分別是:dom
一個以.key結尾的文件(祕鑰文件)ide
兩個以.crt結尾的文件(xxxxx_chain.crt是證書鏈文件,xxxxx_public.crt是證書文件)ui
2.在Apache的目錄下新建一個文件夾,名稱隨意。而後將這三個文件放到這個文件夾裏面。我這邊的文件夾名字是cert。加密
3.在Apache安裝目錄下,打開Apache/conf/httpd.conf,在httpd.conf文件中找到如下參數並進行配置。spa
#LoadModule ssl_module modules/mod_ssl.so #刪除行首的配置語句註釋符號「#」加載mod_ssl.so模塊啓用SSL服務,Apache默認是不啓用該模塊的。若是找不到該配置,請從新編譯mod_ssl模塊。 #Include conf/extra/httpd-ssl.conf #刪除行首的配置語句註釋符號「#」。
若是找不到上面的參數請在文章後面看解決辦法。code
4.保存httpd.conf文件並退出。blog
5.打開Apache/conf/extra/httpd-ssl.conf,在httpd-ssl.conf文件中找到如下參數並進行配置。 證書路徑建議使用絕對路徑。
SSLProtocol all -SSLv2 -SSLv3 # 添加SSL協議支持協議,去掉不安全的協議。 SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM # 使用此加密套件。 SSLHonorCipherOrder on SSLCertificateFile cert/domain name_public.crt # 將domain name_public.crt替換成您證書文件名。 SSLCertificateKeyFile cert/domain name.key # 將domain name.key替換成您證書的祕鑰文件名。 SSLCertificateChainFile cert/domain name_chain.crt # 將domain name_chain.crt替換成您證書的祕鑰文件名;證書鏈開頭若是有#字符,請刪除。
6.保存 httpd-ssl.conf 文件配置並退出。
7.重啓Apache服務器使SSL配置生效。
------------------------------------------------------
這裏說一下上面第3步找不到那些參數的解決辦法:
1.找不到那些參數,多是Apache沒有安裝mod_ssl.so模塊,我這裏用yum方式安裝。在任意路徑下執行下面的命令:
yum -y install mod_ssl
2.命令執行結束安裝完成後 /etc/httpd/conf.d 目錄下會出現一個ssl.conf文件
3.在這個文件裏面找到以下內容進行更改
SSLCertificateFile xxx_public.crt
SSLCertificateKeyFile xxx.key
SSLCertificateChainFile xxx_chain.crt
4.找到上面的三個內容並將後面的文件路徑替換爲你本身的文件路徑,(這些文件就是你以前放在Apache/cert路徑下的三個證書文件且路徑是絕對路徑)
5.而後繼續在此文件中配置找到如下內容配置443站點信息(這裏只說明內容,按照內容直接改就能夠)
DocumentRoot "/home/test/file/" #(引號裏面是你的項目的路徑) ServerName xxxxx (這裏的xxxxx是你的域名) <Directory "/home/test/file/"> #(引號裏面是你的項目的路徑,其餘的直接複製過去便可) Options FollowSymLinks ExecCGI AllowOverride All Order allow,deny Allow from all Require all granted </Directory>
6.而後這個文件就編輯完了。
7.在找到Apache/conf/httpd.conf文件並打開。
8.找到#LoadModule ssl_module modules/mod_ssl.so 並將前面的#號去掉。
9.在此文件的最後引入以前配置好的文件。例如:
#引入外部的ssl配置文件 Include /etc/httpd/conf.d/ssl.conf
10.至此,配置完成,重啓Apache而後訪問你的域名就行了。若是有不合適的地方還請各位大佬說出來。
----------------------------- end -----------------------------