解决ThinkPHP关闭调试模式时报错的问题汇总

   解决ThinkPHP关闭调试模式时报错的问题汇总

        本文给大家汇总了一下个人在项目中所遇到的关闭ThinkPHP的调试模式时遇到报错的几种情况以及最终的处理办法,非常的简单实用,这里分享给大家,有需要的小伙伴可以参考下。

  案例一:

  最近用ThinkPHP开发一个项目,本地开发测试完成上传到服务器后,第一次打开正常,再刷新页面时就出现 “页面调试错误,无法找开页面,请重试”的错误.

  我就郁闷啦,明明本地设置define('APP_DEBUG', false) 运行没点问题,怎么放到服务器上就出错了昵?

  baidu,Google还是没有找到解决方案,突然发现项目APP_Name/Runtime/Cache目录和APP_Name/Runtime/Logs目录没有可写权限,果断更改,F5,唉好啦,妈妈再也不用担心出现错误信息啦!

  案例二:

  ThinkPHP 将 APP_DEBUG 常量设置为 false 后出现了类似下面的问题:

  代码如下:

  Parse error: syntax error, unexpected T_STRING in E:PHPnowhtdocsojbakRuntime~app.php on line 1

  或者直接报”服务器错误”, 怎么办?

  这个和 PHP 有关系,在 php.ini 里修改配置

  代码如下:

  short_open_tag = On

  因为 app.class.php 里面的 build 方法:

  当开启了调试模式后,会获取相关文件的内容 然后重新组合成文件 这个时候是会自动加上 的

  也就是你看到的 ~app.php 文件了

  但是当你不开启调试模式后,会每次都会加载相关的文件,这样子,你的错误就暴露出来了。

  案例三:

  在thinkphp中将APP_DEBUG设置为false之后,数据查询(select, find等等)总是显示第一条。。但是把APP_DEBUG设置为true之后,就正常了。。这是为什么?有什么解决方案吗?

  正常来说,APP_DEBUG是调试模式,放到线上环境,尽量要设置为false的。。

  自己找一个select查询,在关闭debug的情况下,用写文件的方式调试下查询后生成的sql。

  以上所述就是本文的全部内容了,希望大家能够喜欢。

时间: 2024-10-02 08:58:50

解决ThinkPHP关闭调试模式时报错的问题汇总的相关文章

解决ThinkPHP关闭调试模式时报错的问题汇总_php技巧

案例一: 最近用ThinkPHP开发一个项目,本地开发测试完成上传到服务器后,第一次打开正常,再刷新页面时就出现 "页面调试错误,无法找开页面,请重试"的错误. 我就郁闷啦,明明本地设置define('APP_DEBUG', false) 运行没点问题,怎么放到服务器上就出错了昵? baidu,Google还是没有找到解决方案,突然发现项目APP_Name/Runtime/Cache目录和APP_Name/Runtime/Logs目录没有可写权限,果断更改,F5,唉好啦,妈妈再也不用担

Ubuntu下开启php调试模式报错信息解决办法_Linux

Ubuntu下开启php调试模式报错信息解决办法 在Ubuntu下php的缺省设置是不显示错误信息的,如果程序出错会显示"无法处理此请求的错误提示",这在开发环境下非常不方便. 其实我们只要编辑下apache的配置文件就好 1.我的apache 配置文件目录是/etc/apache2/apache2.conf sudo vim /etc/apache2/apache2.conf 再最后加入以下两行 php_flag display_errors on php_value error_r

解决web.py使用session时报错AttributeError问题

最近在学习web.py使用session时,经常会遇到AttributeError错误,大体报错内容是: AttributeError: 'ThreadedDict' object has no attribute 'xxxxx' 网上找的解决办法都是关闭web.py的调试模式,但有时关闭后也会报错,很是郁闷. 最后郑晓摸索出了使用session时需要注意的几点,在这里记录一下: 1. 首先请关闭调试模式: web.config.debug = False 代码需加到import web后,调用

hadoop-windows平台上eclipse调试wordcount时报错

问题描述 windows平台上eclipse调试wordcount时报错 windows平台上eclipse调试wordcount时报错,$HADOOP_HOME/bin下加入winutils.exe和hadoop.dll时报错org.apache.hadoop.util.NativeCrc32.nativeComputeChunkedSums(IILjava/nio/ByteBuffer;ILjava/nio/ByteBuffer;IILjava/lang/String;JZ)V 直接点击df

thinkphp开启调试模式取消生成缓存

最近回到thinkphp  发现以前老版本的关闭缓存说的common这个里面的那两个关闭缓存的文件不见了.找了很长时间不知道怎么回事. 于是去看手册,看百度. 后来发现,可以开启调试模式来关闭缓存,而且开启调试模式对程序员来说还有很多好处的哦..   在thinkphp3.0完全开发手册里面搜调试两个字,你回发现很多技巧.下面是开启调试功能的步骤   虽然编译缓存很优秀,但是并不利于开发阶段中调试和排错,我们强烈建议ThinkPHP开发人员在开发阶段始终开启调试模式,方便及时发现隐患问题和分析.

ThinkPHP调试模式与日志记录概述_php实例

本文所述为ThinkPHP调试模式与日志记录的使用方法,该功能在进行ThinkPHP项目开发的过程中起到非常重要的作用,有必要加以理解并掌握.具体方法如下: 1.可以在config.php中进行设置,默认为关闭状态. 开启方法如下: 'APP_DEBUG' => true 打开\ThinkPHP\Common\debug.php文件可以查看debug的默认设置如下: return array( 'LOG_RECORD'=>true, // 进行日志记录 'LOG_RECORD_LEVEL' =

thinkphp-ThinkPhp开启调试模式,不报错只显示空白是为什么,求指点

问题描述 ThinkPhp开启调试模式,不报错只显示空白是为什么,求指点 没有正常的报错,只是空白,好生纠结,就这个调调

uwp - 解决使用EntityFramework时报错“unable to load dll 'sqlite3':the specified module could not be found”

原文:uwp - 解决使用EntityFramework时报错"unable to load dll 'sqlite3':the specified module could not be found" 在使用uwp的ef过程中碰到一万个问题快折腾死我了,好在最后终于解决掉所有问题,但愿如此,因为在这之前先后发生不同的报错,不知道后面还会碰到新的问题不. 其中一个问题是这样的,生成能正常生成,但是启动程序后在运行到:"db.Database.Migrate();"

sql server 08 r2数据库导入数据时报错,怎么解决

问题描述 sql server 08 r2数据库导入数据时报错,怎么解决 解决方案 不是文件缺失?建议查查. 解决方案二: 尝试以管理员模式运行sqlserver试试