win2003 thinkphp IIS6 php5.2 验证码乱码
来源:互联网 发布:mac什么游戏 编辑:程序博客网 时间:2024/06/01 07:21
配置:win2003 thinkphp IIS6 php5.2 验证码乱码
说明:仅供参考
当遇到这样的问题都会感到很奇怪,本地是好的为什么放到服务器上就乱码了,或者从这台服务器换到另外一台服务器就乱码了,
乱码效果:
用tp自带的类生成验证码,主要用到Image.class.php 与 String.class.php
1:我们单独把Image.class.php 与 String.class.php 拉出来在服务器上做个测试,看是否能正常生成验证码,
测试结果是正常的,说明乱码与Image.class.php 和 String.class.php 无关
2:然后我们去测试正常与不正常的差别<curl 访问查看信息同学提醒的>
3:发现头部信息异常
import("ORG.Util.Image");Image::buildImageVerify(4);这是我调用生成验证码方式,我们继续查看头部信息是哪里定义的在Image.class.php 找到输出方法 static function output($im, $type='png', $filename='') { header("Content-type: image/" . $type); $ImageFun = 'image' . $type; if (empty($filename)) { $ImageFun($im); } else { $ImageFun($im, $filename); } imagedestroy($im); exit(); }header("Content-type: image/" . $type); 没有生效再尝试在方法下添加header('Location: http://www.baidu.com/');根本没有跳转 最终目标订到header("Content-type: image/" . $type);没有生效,输出没有定义是图片类型,所以乱码,4:解决@1一般遇到这样的问题都是查看验证码输出前是不是有别的输出,@2查看文件编码,@3是否存在BOM其实很多都是存在BOM,只是我们不易发现,当我尝试把debug关闭的时候刷新几下,居然好了....重复测试几次debug关闭正常 开启乱码这就好办,肯定是当debug开启的时候,配置数据是从加载的文件里面读取的,要读取数据的文件里面存在BOM,debug关闭的时候配置数据是从~runtime.php里面读取的,不再去加载文件里读取,所以不存在BOM我们就去查找~runtime.php加载了哪些文件数据信息最后找到common.php 下面存在BOM <容易犯的错误:经常会去<?php 前面去看有没有BOM>例如:
0 0
- win2003 thinkphp IIS6 php5.2 验证码乱码
- [转]win2003 iis6支持php5
- 最新WIN2003+IIS6+PHP5+MYSQL5.1+ZEND3.2配置教程
- win2003+iis6+php5.3+oracle10g 环境搭建
- php5.36+IIS6+FastCGI1.5+win2003
- iis6.0 php5.2.17 mysql 安装 win2003
- 关于win2003 iis6 不显示验证码的解决方法
- win2003 iis6 thinkphp 伪静态规则
- php5.38安装(win2003+iis6.0+php5.38)
- win2003上 IIS6 + php5.1 + mysql4.0.21 安装设置
- win2003+iis6+php5+mysql5.0.4.5+zend3+phpmyadmin 环境配置
- WIN2003下安装php5.3+IIS6+fastcgi教程
- win2003+IIS6+PHP5.3.8+MSSQL2008的安装配置及连接
- win2003+IIS6+PHP5.3.8+MSSQL2008的安装配置及连接
- WIN2003+IIS6+FastCGI+PHP5.4.30的安装配置
- Thinkphp验证码出现乱码处理方案
- ThinkPHP 验证码 页面解析乱码
- 租用服器WIN2003+IIS6+PHP5.4 +PHP5.3.8的安装配置
- 欧拉函数
- C++中堆和栈内存分配
- homeBar
- GCD介绍(四): 完结
- 经典排序算法 - 冒泡排序Bubble sort
- win2003 thinkphp IIS6 php5.2 验证码乱码
- epoll 使用笔记
- 函数学习
- git回滚
- zookeeper的安装
- java保留两位小数的四种方法
- Android UI 优化 使用<include/>和 <merge />标签
- Openfire 性能优化
- 2015阿里实习生招聘一题解析3