您好,登錄后才能下訂單哦!
小編給大家分享一下PHP7開啟OpenSSL擴展失敗的解決方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
最近學習Laravel框架,需要開啟PHP的OpenSSL擴展,試了網上的許多方法都不行,最后搞了很久,終于成功,現將經歷寫下,以便總結。
以下為本人失敗的經歷:
最開始使用網上說的最多的方法:
1、首先檢查php.ini中extension=php_openssl.dll是否存在,如果存在的話去掉前面的注釋符“;”, 如果不存在這行,那么添加extension=php_openssl.dll;
2、將PHP目錄下的:php_openssl.dll(該文件在ext文件夾), ssleay32.dll, libeay32.dll 3個文件拷貝到 windows\system32\文件夾下;
3、重啟apache;
至此,openssl功能就開啟了。
很顯然,我沒有成功,繼續找方法,
之后在知乎上看到有人遇到同樣的問題,后來解決了,還說了方法,我就也試了一下,方法如下圖:
題主說了僅限win7,我的是win10,不過還是試了一下,萬一成功了呢
很顯然,依然沒有成功,繼續找方法,
之后又試了幾個方法,依然沒有成功,然后就想著用別人的電腦試一下,于是就用了小伙伴的電腦試了一次,將php.ini中extension=php_openssl.dll前面的注釋去掉,三個文件也沒復制,重啟Apache,打開phpinfo,成功,一次成功。此時我的內心是崩潰的,我的怎么就不行啊,沒辦法,繼續搞,最后我把兩臺電腦的PHP的配置文件php.ini和Apache的配置文件http.conf中有關ssl的地方一一比較,希望能找到問題。最后還真找到了一點不同,我發現我的http.conf中LoadModule ssl_module modules/mod_ssl.so是注釋掉的,而他的沒有注釋。馬上去掉注釋,重啟Apache,打開phpinfo,搜索OpenSSL,發現多了三條搜索記錄,可是仍然沒有啟用。到這個時候,我已經沒有方法了,就繼續搜吧,功夫不負有心人,最后終于成功了。
以下為最后成功的方法:
看到一篇文章寫到php5升級到php7時需要注意的一些問題,其中有這么一條:
重啟Apache時,報curl和openssl的擴展庫加載失敗(apache的log會報錯)
可將libeay32.dll和ssleay32.dll文件復制并替換到apache\bin目錄下,再次啟動Apache
我就又試了一下,成功,所以我的成功方法應該是去掉php.ini中openssl擴展的注釋,移動以上兩個文件,重啟Apache。
注:兩個文件往apache\bin目錄復制時,最好提前備份下原目錄下的這兩個文件,如果覆蓋出錯,關閉Apache即可。
每個人的環境可能有些許不同,以上內容僅供參考。
以上是“PHP7開啟OpenSSL擴展失敗的解決方法”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。