美文网首页我爱编程
PHP.ini配置文件详解

PHP.ini配置文件详解

作者: 石乐志的LK | 来源:发表于2017-08-22 08:08 被阅读0次

    查看PHP.ini文件的路径

    /usr/local/php/bin/php -i |head

    如果此处为None说明没有加载到具体的php.ini,想想自己以前安装PHP的时候是不是忘记拷贝过来?

    一般文件的位置都是在

    Loaded Configuration File => /usr/local/php/etc/php.ini

    若是没有或则自己的里面没有大量的注释内容(以;开头的),kk劝你还是再拷贝一份吧。

    cp /usr/local/src/php-5.6.31/php.ini-production /usr/local/php/etc/php.ini

    1. 禁止使用部分函数 

    在php中有大量的函数,但是有一些函数对我们来说是不安全的,所以需要禁掉

    vim /usr/local/php/etc/php.ini


    建议大家搜索一下关键字,对应的写到相应的部分


    disable_functions = eval,assert,popen,passthru,escapeshellarg,escapeshellcmd,passthru,exec,system,chroot,scandir,chg,rp,chown,escapeshellcmd,escapeshellarg,shell_exec,proc_get_status,ini_alter,ini_restore,dl,pfsock,open,openlog,syslog,readlink,symlink,leak,popepassthru,stream_socket_server,popen,proc_open,proc_close

    2. 配置error_log

    PHP排查错误有两种做法

    (1)错误信息直接输出显示到网页中

    vim /usr/local/php/etc/php.ini

    找到(466行)display_error=更改为

    display_error=on

    重启服务器即可

    /usr/local/apache2/bin/apachectl graceful

    但是这种情况只适合临时调试,不适合长期配置,因为可能暴露我们服务器的一些信息,被人攻击,所以就要用到第二种方法

    (2)错误信息输出到日志文件

    vim /usr/local/php/etc/php.ini

    更改一下配置,以前没有的配置要自己写

    首先关闭日志输出到浏览器

    display_errors = Off

    然后打开错误日志开关

    log_errors = On

    指定错误日志的输出路径

    error_log=/usr/local/php/logs/error.log

    指定错误日志的级别,意思是报告所有的错误信息,除了E_STRICT这一种

    error_reporting = E_ALL | E_STRICT


    解释一下不同的错误级别

    1   E_ERROR            报告导致脚本终止运行的致命错误

    2   E_WARNING       报告运行时的警告类错误(脚本不会终止运行)

    4   E_PARSE             报告编译时的语法解析错误

    8   E_NOTICE           报告通知类错误,脚本可能会产生错误

    30767   E_ALL                  报告所有的可能出现的错误(不同的PHP版本,常量E_ALL的值也可能不同)


    重启服务器后生效

    /usr/local/apache2/bin/apachectl graceful

    相关文章

      网友评论

        本文标题:PHP.ini配置文件详解

        本文链接:https://www.haomeiwen.com/subject/qwskdxtx.html