日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Apache配置HTTPS功能

發(fā)布時(shí)間:2023/12/20 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Apache配置HTTPS功能 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

apache配置https

一、yum 安裝openssl和openssl-devel,httpd-devel
二、生成證書(也可以從公司的證書頒發(fā)機(jī)構(gòu)獲取):
#建立服務(wù)器密鑰 openssl genrsa -des3 1024 > /usr/local/apache/conf/server.key # 從密鑰中刪除密碼(以避免系統(tǒng)啟動(dòng)后被詢問口令) openssl rsa -in /usr/local/apache/conf/server.key > /usr/local/apache/conf/server2.key mv /usr/local/apache/conf/server2.key /usr/local/apache/conf/server.key #建立服務(wù)器密鑰請(qǐng)求文件 openssl req -new -key /usr/local/apache/conf/server.key -out /usr/local/apache/conf/server.csr 5>openssl x509 -in /usr/local/apache/conf/server.csr -out # 建立服務(wù)器證書 /usr/local/apache/conf/server.crt -req -signkey /usr/local/apache/conf/server.key -days 365
三、修改Apache的配置文件httpd.conf

打開ssl模塊,沒有這個(gè)模塊就需要安裝依賴包:mod_ssl,安裝后就會(huì)在modules里面找到:

LoadModule ssl_module modules/mod_ssl.so

引入ssl配置文件,增加支持ssl:

Include conf/extra/httpd-ssl.conf(去掉行首的注釋)
  • 啟動(dòng)重定向(可選),使用用戶HTTP訪問自動(dòng)重定向?yàn)镠TTPS,直接在http.conf最后配置即可,在httpd.conf文件尾加入如下內(nèi)容:
RewriteEngine on RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^/?(.*)$ https://%{SERVER_NAME}/$1 [L,R]
四、修改加密文件ssl.conf,通過yum安裝好的httpd,在conf.d目錄下面有ssl.conf配置文件,我們需要在里面配置一個(gè)VirtualHost和配置證書和密鑰:
LoadModule ssl_module modules/mod_ssl.so Listen 443 SSLPassPhraseDialog builtin SSLSessionCache shmcb:/var/cache/mod_ssl/scache(512000) SSLSessionCacheTimeout 300 SSLMutex default SSLRandomSeed startup file:/dev/urandom 256 SSLRandomSeed connect builtin SSLCryptoDevice builtin SSLProtocol all -SSLv2 -SSLv3 SSLHonorCipherOrder on SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW:!RC4:<VirtualHost _default_:443> # 必須有一個(gè)虛擬主機(jī),這樣才可以使用跳轉(zhuǎn)功能和使用443端口訪問 DocumentRoot "/home/store/webroot" Servername https://xxx.com/ ErrorLog logs/ssl_error_log TransferLog logs/ssl_access_log LogLevel warn SSLEngine on SSLCertificateFile /etc/httpd/conf/cert/xxx.com.crt SSLCertificateKeyFile /etc/httpd/conf/cert/xxx.com.key </VirtualHost>
五、重啟Apache

service httpd restart

  • 在瀏覽器輸入https://域名 或者 域名:443,如果兩個(gè)能正常訪問,表示https已經(jīng)配置成功。
  • 在瀏覽器輸入 域名,如果能夠正常跳轉(zhuǎn)到https連接上,那說明跳轉(zhuǎn)功能正常。
    • 啟動(dòng)apache 碰到下面問題:
    Invalid command 'SSLPassPhraseDialog', perhaps misspelled or defined by a module not included in the server configuration

    到apache的bin 目錄下面執(zhí)行 ./httpd -l 看看有沒有mode_ssl.c,這個(gè)錯(cuò)誤說明ssl模塊安裝沒有成功。
    解決辦法:

    • 1、重新編譯apache,加上--enable-ssl --with-ssl參數(shù)

    • 2、把ssl模塊加入到已經(jīng)編譯好的apache中
      首先,使用 whereis openssl 命令獲取lib和include的路徑

    [root@robot /usr/local/apache/modules]# whereis openssl openssl: /usr/bin/openssl /usr/lib/openssl /usr/include/openssl /usr/share/man/man1/openssl.1ssl.gz

    然后 在apache 源碼的modules/ssl文件夾下,使用命令/usr/sbin/apxs -i -a -D HAVE_OPENSSL=1 -I/usr/include/openssl/ -L/usr/lib/openssl/ -c *.c -lcrypto -lssl -ldl(apxs需要安裝http-devel才有,雖然如此,我還是沒有編譯成功,于是就在其他已經(jīng)編譯了這個(gè)模塊的機(jī)器上拷貝mod_ssl.so到apache模塊目錄/usr/local/apache/modules)

    轉(zhuǎn)載于:https://www.cnblogs.com/liaojiafa/p/6028816.html

    總結(jié)

    以上是生活随笔為你收集整理的Apache配置HTTPS功能的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。