lamp環境 centos6.8系統 基於Apache 寶塔面板 升級成https後訪問網站總是下載網站根目錄的index.php
網站環境:
LAMP環境
centos 6.8
Apache 2.4
PHP 5.6
寶塔面板
使用的是數安時代的ssl證書
閱讀此Apache 2.4 -SSL證書安裝指南文件來進行安裝證書
在做這個的過程中修改httpd.conf的時候還有一個配置需要開啟,這個官方宣告中也沒有,不開這個配置的會報錯。
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
因為從來沒有接觸過升級https的專案,也是第一次弄所以有好多不懂的地方,全拼自己摸索的做。在配置修改主機域名的時候需要將原httpd-ssl.conf的檔案中的相應句子全部註釋掉了。
注:http情況下訪問都可以,沒有問題。
在做完了這些配置後發現一個問題,清空伺服器快取後訪問域名,就會下載當前目錄下的index.php檔案,查找了相關碰到此問題的部落格,基本上都是一些大同小異的,但是本著找相同配置環境的文件來處理,試了好多都不管用,感覺要崩潰了。
但是功夫不負有心人啊,在查詢資料的同時,看到有一個人是因為
LoadModule mime_module modules/mod_mime.so
這個模組打開了,並且解決了問題。我在想我是不是也打開了,果然開啟httpd.conf中檢視時,這個模組確實是開啟狀態。
將這個模組關閉了以後,清空快取,重啟Apache,測試網站後,果然不在下載了。
不下載了以後,再去訪問域名會發現網站根目錄的index.php原始碼給報出來了,為此我又查詢相關的資料後,大體意思差不多,就是在配置httpd-ssl.conf中還缺少了相關的程式碼,加上就好了,下面貼出我httpd-ssl.conf中的配置。
<VirtualHost *:443> DocumentRoot "你的網站根目錄" ServerName 你的域名 SSLProtocol all -SSLv2 -SSLv3 SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!3DES:!MD5:!ADH:!RC4:!DH:!DHE SSLEngine on //這三個都是證書檔案的路徑 最好是把三個檔案都放在一個資料夾中,因為可能你在你的伺服器上放了不止一個專案 SSLCertificateFile "/www/server/apache/conf/5168zsssl/域名.crt" SSLCertificateKeyFile "/www/server/apache/conf/5168zsssl/域名.key" SSLCertificateChainFile "/www/server/apache/conf/5168zsssl/issuer.crt" //這個標籤中的內容要去你的網站的配置檔案中去找,黏貼過來就可以用 #PHP <FilesMatch \.php$> SetHandler "proxy:unix:/tmp/php-cgi-56.sock|fcgi://localhost" </FilesMatch> //這個標籤中的內容要去你的網站的配置檔案中去找,黏貼過來就可以用 #PATH <Directory "你的網站根目錄"> SetOutputFilter DEFLATE Options FollowSymLinks AllowOverride All Require all granted DirectoryIndex index.php index.html index.htm default.php default.html default.htm </Directory> </VirtualHost>
這樣就配置完成了,因為是第一次自己整這個,一直都搞不懂,整了5天才弄出來,在這裡貼出來與大家一起分享一下,希望有碰到這個問題的朋友少走一些彎路。