php版本低不顯示驗證碼的解決方法:1、安裝php5-gd所需的依賴;2、建立一個clean.php檔案在專案根目錄下;3、清除bom即可。
本文操作環境:windows7系統、PHP5版,DELL G3電腦
php版本低不顯示驗證碼怎麼辦?
PHP5驗證碼無法顯示,GD庫正常安裝也無法顯示的解決方法
自己是做JAVA的,同時也維護了一個直接接手的PHP項目,對PHP是零基礎,做了項目的伺服器遷移,網域加了https,最後檢查能正常訪問,細的功能沒有完全測試。
突然有一天被投訴註冊模組的驗證碼沒辦法正常顯示(暫時去掉之後進入後台管理模組發現圖片上傳功能也不正常,估計都是一個問題)。於是就開始網路上長達4天間斷性尋找解決方法的路程。
其實一般性狀況的解決很容易就能找到,有些關鍵字就是php-gd、php-fpm(本人配置的是nginx)、php.ini、快取清除。但是debian系統,依賴負責到無法想像,並且每個版本的依賴名還不一樣,而當前系統本身又是生產環境伺服器,又存在了各種版本的依賴,總之就是頭大。
最終在嘗試了無數個依賴來源,依賴的更新之後還是成功裝上了php5-gd所需的依賴。終於phpinfo中也顯示除了GD版本資訊及支援的圖片格式,然而,驗證碼依然無法顯示。 。 。 。 。 。
在嘗試無數搜尋關鍵字之後,"php5裝了gd也不顯示驗證碼"終於搜尋到了一個帖子,裡面提到了BOM頭,這一點就明白過來,因為在用crt遠端登入伺服器編輯一些檔案的時候也會有這個BOM頭的情況,所以創建一個clean.php檔案在專案根目錄下,
貼上如下程式碼
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
|
直接瀏覽器存取https:/ /url/clean.php
有問題就會看到很多這樣的日誌,接著重新造訪驗證碼頁面
正常訪問~
上傳圖片的問題其實是因為網域改了https而上傳模組的配置沒改影響到的,加了https也正常了
推薦學習:《 PHP影片教學》
以上是php版本低不顯示驗證碼怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!