手把手教你apache設定https

  • A+
所属分类:Linux

網上有很多這方面的教程   但是都不太容易看懂 且都雜亂無章   到最後   不知道都說的些什麼。遇到一些錯誤大多都是相互抄襲。

今天我也寫一寫這方面的內容 希望能對你真正有用         

httpshttp+openssl構成   實現加密傳輸

簡單地說 預設使用者不輸入httphttps   會自動跳轉到https。就需要配置兩個虛擬機。一個80埠,一個443

先下載各套件吧

下載apr: wget -c http://mirrors.advancedhosters.com/apache//apr/apr-1.6.5.tar.gz -P /opt

下載apr-util:wget -c http://mirrors.advancedhosters.com/apache//apr/apr-util-1.6.1.tar.gz -P /opt

下載apache2.4wget -c http://mirrors.hust.edu.cn/apache//httpd/httpd-2.4.37.tar.gz -P /opt

 安裝關聯套件:yum install -y gcc gcc-c++ openssl opens-devel openldap openldap-devel

進入到/opt

cd  /   opt

拆包apr 並進入apr-1.65資料夾進行準備預編譯

tar apr-1.6.5.tar.gz

cd apr-1.65

必須做這一步 否則無法正常預編譯

vim   configure

查找RM='$RM'   將其修改為   RM='$RM -f'   並存儲

./configure --prefix=/usr/local/apr

編譯並安裝:make && make instal切換到上級資料夾 拆包   apr-util-1.6.1.tar.gz

cd ../;tar -zxf   apr-util-1.6.1.tar.gz

進入到apr-util-1.6.1資料夾

cd apr-util-1.6.1

預編譯:     ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

編譯並安裝   make && make install

切換到上級資料夾 拆包 httpd-2.4.37.tar.gz

cd ../;tar -zxf httpd-2.4.37.tar.gz

進入到httpd-2.4.37資料夾

cd httpd-2.4.37

預編譯apache2.4

./configure --prefix=/usr/local/apache2.4 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-so --enable-rewrite --enable-ssl --with-mpm=prefork --with-proxy --with-headers --with-expires --enable-session --with-ldap

注意:如果你採用的是 yum install -y  apr apr-util apr-devel apr-util-devel 安裝的   apache的編譯參數選項不要添加 --with-apr --with-apr-util     。一般情況下 通過yum 安裝 apr apr-util相關套件是沒有問題的。如果啟動apache遇到apr-util相關的錯誤,你該考慮編譯安裝aprapr-util了。如果你在編譯apr-util遇到了一些錯誤,你也別到處找答案了 ,你直接降低一個版本使用1.5.x的就可以

編譯並安裝程式

make && make install

生成cert資料夾

mkdir /usr/local/apache2.4/conf/cert

用於存放你申請的SSL證書   SSL證書需要驗證你的功能變數名稱。參照阿裡雲申請SSL

不論你是哪裡買的功能變數名稱你都可以在阿裡雲申請免費版的簽證   。最後將 證書上傳到   cert資料夾裡

生成80   443埠的虛擬機器範本 wenxuan.conf  

vim   /usr/local/apache2.4/conf/extra/wenxuan.conf

原始碼如下:

#####這是80埠虛擬機器開始######

<VirtualHost *:80>

#綁定的網站功能變數名稱

           ServerName wenxuan.503e.net

#綁定的網站別名

           ServerAlias wenxuan.503e.net

#開啟重寫引擎     Rewite是重寫的意思 Engine是引擎