zoukankan      html  css  js  c++  java
  • 使用PHP + Apache访问有错误的php脚本时不报错

      遇到一个问题:

      在命令行编辑php脚本后,直接使用php命令行执行该php脚本,如果脚本出现错误,在命令行的情况下会报错,显示错误信息,比如下面的情况。

    [root@localhost wwwroot]# cat index.php
    <?php
        show;
    [root@localhost wwwroot]# php index.php
    PHP Notice:  Use of undefined constant show - assumed 'show' in /home/wwwroot/index.php on line 2
    

      

      在浏览器中访问该php脚本,浏览器并不会显示任何信息,只是一片空白

      后来才发现是因为php配置文件(usr/local/php/etc/php.ini)中display_errors的值为Off,只要将这一项改为On即可

    ;display_errors = Off
    display_errors = On 
    

      修改配置文件之后,记得重启apache,

    service httpd restart
    

      

    有点疑惑:

      1、为什么在没有开启显示错误(display_errors 为Off)的时候,在浏览器中访问该php脚本时不报错,而使用php命令来运行php脚本会报错???

      2、为什么修改PHP的配置文件php.ini之后,重启的是apache,而不是重启php呢???

      3、apache在运行时,会载入php的配置文件php.ini吗?是,会的。

      4、难道是因为我没有启动php吗?我电脑只装了php和apache这几个软件,没有安装php-fpm,修改配置文件后重启电脑?

        于是我将php.ini中的display_error设为Off,重启了电脑,再次在命令行中运行错误的php脚本,然后发现仍旧报错。

      5、有人说php的cli和通过浏览器运行php脚本,载入的php.ini可能不是同一个!!!这就奇怪了

      6、修改php配置文件之后,需要重启php-cgi,所以不可以平滑重启(重启过程中,业务不中断),于是乎,我将电脑重启了,

  • 相关阅读:
    【观点】停止编程 狼人:
    JavaScript之父谈语言诞生记 狼人:
    【评论】你在业余时间都开发过什么? 狼人:
    【心得】Web设计师应参考的技术 狼人:
    每天写出好代码的5个建议 狼人:
    如果编程语言是一条船 狼人:
    数据库测试——实用技巧及测试方法 狼人:
    【观点】我的PHP退役了 狼人:
    Google发布Swiffy 将Flash转换为HTML5 狼人:
    20个不错的CSS页面布局相关资源推荐 狼人:
  • 原文地址:https://www.cnblogs.com/-beyond/p/8459014.html
Copyright © 2011-2022 走看看