織夢驗證碼不顯示解決方法建站問題
導讀:建站問題建站問題有次在用織夢系統進行二次開發的時候,突然發現上傳至服務器后,驗證碼竟然不能顯示。 去網上找了很多資料,幾乎全都是說權限和GD庫的問題。 可是按照這些方法試過后,網站seo優化診斷工具seo網站優化培訓。
有次在用織夢系統進行二次開發的時候,突然發現上傳至服務器后,驗證碼竟然不能顯示。 去網上找了很多資料,幾乎全都是說權限和GD庫的問題。 可是按照這些方法試過后,驗證碼仍然不能顯示。 后來想到以前做網站的時候遇到一seo網站優化軟件個UTF-8編碼的BOM問題。于是就去網 […]
有次在用織夢系統進行二次開發的時候,突然發現上傳至服務器后,驗證碼竟然不能顯示。
去網上找了很多資料,幾乎全都是說權限和GD庫的問題。
可是按照這些方法試過后,驗證碼仍然不能顯示。
后來想到以前做網站的時候遇到一個UTF-8編碼的BOM問題。于是就去網上找了段代碼,去掉了整個網站文件的BOM。 去掉后驗證碼還真顯示了。
試分析了一下原因,可能是因為BOM會產生一個空行的輸出。導致生成驗證碼的時候會產生錯誤,所以不能顯示。
批量去除BOM的方法:將以下代碼保存為PHP文件,通過瀏覽器進行訪問即可。
<?php //remove the utf-8 boms //by magicbug at gmail dot com if (isset($_GET['dir'])){ //要去除的文件目錄,無參數則為文件當前目錄。 $basedir=$_GET['dir']; }else{ $basedir = ‘.’; } $auto = 1; checkdir($basedir); function checkdir($basedir){ if ($dh = opendir($basedir)) { while (($file = readdir($dh)) !== false) { if ($file != ‘.’ && $file != ‘..’){ if (!is_di營銷型網站建設r($basedir.”/”.$file)) { echo “filename: $ba個業網站建設公司sedir/ $file “.checkBOM(“$basedir/$file”).” <br>”; }else{ $dirname = $basedir.”/”. $file; checkdir($dirname); } } } closedir($dh); } } function checkBOM ($filename) { global $auto; $contents = file_get_contents($filename); $charset[1] = substr($contents, 0, 1); $charset[2] = substr($contents, 1, 1); $charset[3] = substr($contents, 2, 1); if (ord($charset[1]) == 239 && ord($charset[2]) == 187 && ord($charset[3]) == 191) { if ($auto == 1) { $rest = substr($contents, 3); rewrite ($filename, $rest); return (“<font color=red>BOM found, automatically removed.</font>”); } else { return (“<font color=red>BOM found. </font>”); } } else return (“BOM Not Found.”); } function rewrite ($filename, $data) { $filenum = fopen($filename, “w”); flock($filenum, LOCK_EX); fwrite($filenum, $data); fclose($filenum); } ?>
聲明: 本文由我的SEOUC技術文章主頁發布于:2023-05-26 ,文章織夢驗證碼不顯示解決方法建站問題主要講述驗證碼,解決方法,織夢網站建設源碼以及服務器配置搭建相關技術文章。轉載請保留鏈接: http://www.bifwcx.comhttp://www.bcinvested.com