Chinaunix首页 | 论坛 | 博客
  • 博客访问: 139774
  • 博文数量: 43
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 501
  • 用 户 组: 普通用户
  • 注册时间: 2014-10-24 15:28
文章分类

全部博文(43)

文章存档

2015年(18)

2014年(25)

我的朋友

分类: PHP

2015-04-07 17:20:52

1:今天部署php项目,发布完项目后,发现访问项目时候,主页面验证码无法加载,网上搜集解决方案,主要如下

2:千篇一律,主要解决方案为,修改php.ini文件去掉注释如下:

2.1 extension=php_gd2.dll(去掉该代码前边的;号,打开该模块,改模块为php自动生成图片时候调用的一个动态库,如果没有改动态库,则无法正常运行)

2.2 修改如下模块还无法运行时候,注意查看php.ini中 (extension_dir路径,默认为C盘,注意修改为你php的路径,如果该文件错误则根本无法找到你的dll文件,这个里面加载的是你的dll的文件夹路径)
    
2.3以上还不行,将刚刚的php_gd2.dll 以及你的php.ini放到你的C盘 windows下

2.4 进行以上修改以后,访问你的主页面:localhost(该页面会加载出来你的php基本信息包括gd模块,搜索gd模块如果搜索到了,代表改模块已经成功加载)

3以上步骤解决不了,可能是你的bom 中UTF-8编码问题导致:将如下代码,放在你的php根目录下,命名为1.php 并且访问下localhost/1.php 访问一次,则验证码问题得到解决


 /*清除rom*/
 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_dir($basedir."/".$file)){
                    echo "filename: $basedir/$file ".checkBOM("$basedir/$file")."
";
                }else{
                    $dirname = $basedir."/".$file;
                    checkdir($dirname);
                }
            }
        }//end while
    closedir($dh);
    }//end if($dh
 }//end function
 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 "BOM found, automatically removed.";
        }else{
            return ("BOM found.");
        }
    }   
    else return ("BOM Not Found.");
 }//end function
 function rewrite($filename, $data){
    $filenum = fopen($filename, "w");
    flock($filenum, LOCK_EX);
    fwrite($filenum, $data);
    fclose($filenum);
 }
 ?>

阅读(1599) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~