Apache配置https

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 -----------------------------

相關文章
相關標籤/搜索