- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
标题几乎说明了一切。我一直在努力让这个工作一整天。我正在创建一个基于 PHP 的登录系统,我需要进行一些调试。现在对我来说最有用的是能够在整个 PHP 程序的某些点将调试消息写入文件。根据文档,看起来这就是 error_log()
应该做的,但尽管我已经尝试了一切,但我完全没有成功。我在下面尝试过的所有内容的完整列表:
将以下内容添加到 /etc/php/7.0/apache2/php.ini
error_reporting = E_ALL
display_errors = On
log_errors = On
此外,尝试将 error_log
设置到 /usr/
、/var/www/http/
和 中的位置>/home/
使用 ini_set()
和 error_reporting()
设置所有这些变量,包括 PHP 文件中的 error_log
手动创建应该写入的文件,并将其拥有的用户和组设置为 www-data
并将其权限设置为 777
最后但同样重要的是,重新安装 libapache2-mod-php7.0
和 php7.0
,无济于事
基本上,除了在跳楼前用我的笔记本电脑打破我办公楼三楼的 window 之外的一切
我真的找不到其他东西可以在 Google 上尝试,所以我想我应该问问专家,现在我来了。如果有人可以提供任何建议,我们将不胜感激。
最佳答案
我猜日志会写入系统日志,因为在 error_log() 中您没有提供目的地。
试试下面的代码
error_log("An error occured", 3, "/var/tmp/my-errors.log");
确保这个文件可以被 php 读取,fpm 或 www-data 取决于你的配置,你可以在使用 touch 之前创建它,并使用 chmod 手动添加权限
3表示destination是一个文件
如果您使用 apache 然后检查 httpd.conf 或任何其他地方(v 可能存在错误日志的位置
ErrorLog "/var/log/apache2"
然后使用ls -la
ll
等检查此文件是否有以下用户组
-rwxrwxr-x 1 www-data www-data
应该会出现这样的内容。
另一个选项是在适当的 php.ini 中设置以下内容(CLI 和 apache 有不同的 php.ini 文件)
error_log = /var/log/phperrors.log
然后
touch /var/log/phperrors.log
chown www-data: /var/log/phperrors.log
chmod +rw /var/log/phperrors.log
没有奇迹,但如果它仍然不起作用,您可以使用 set_error_handler()
编写并注册您自己的错误处理程序,您可以在 php manual 中找到如何执行此操作的示例。 .它更像是 hack,但肯定会起作用。如果它不会那么这意味着根本没有触发错误然后你应该看看你是否编辑了正确的 php.ini 或在错误被触发之前使用 ini_set() 。
关于PHP - error_log() 不会打印到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49141486/
我运行了 phpinfo() 并且 error_log 指令只是说 error_log。那指的是什么文件?即 error_log 的完整路径是什么? 最佳答案 报价 from the document
我有一个使用 error_log() 输出错误的 cron 脚本.然而,有时日志文件会变得很大。是否error_log()是否具有在达到特定定义的行数后自动存档日志文件的 native 函数?我可以编
我想通过将失败的登录尝试写入Apache错误日志来提高PHP CMS的安全性。我的想法是,它随后将与fail2ban一起使用,从而禁止试图拖出的所有IP地址强制猜测CMS管理员登录名的密码。 另外,如
我一直在尝试编写一个可以在网站上使用的错误处理类,如果出现错误,它会向我发送电子邮件。问题是,当我分析应用程序时,它被 error_log 函数阻塞。这是我的代码(省略类: class ErrorHa
如何获得动态虚拟主机的错误日志文件? server { listen 80; server_name ~^(?[^.]*).(?[^.]*).dev.example.com;
我公司有一个大型主机,但它不由我们管理,我们看不到配置文件,但我想在我们的本地测试服务器上回复此功能。 我是我公司的新人,想开始一些应用程序调试,以解决客户的一些次要和主要问题,但文件量太大,以至于单
当我使用函数 error_log 时使用 $message_type = 1 - 通过电子邮件发送,我需要传递给 sendmail 额外参数 "-f"。 $发件人邮件 有什么方法可以将参数传递给发件人
标题几乎说明了一切。我一直在努力让这个工作一整天。我正在创建一个基于 PHP 的登录系统,我需要进行一些调试。现在对我来说最有用的是能够在整个 PHP 程序的某些点将调试消息写入文件。根据文档,看起来
我研究了不同的方法和指令,包括: auto_prepend_file .user.ini 文件 getcwd() 调试回溯() 而且我似乎无法找到一种方法来更改 error_log 的路径以登录与包含
我正在开发一个不使用任何框架,也不使用debug = 1的基本应用程序。我试图弄清楚如何显示php的var_dump和error_log,但是我不确定它们应该在哪里打印。 我在本地主机上使用PHP的内
如标题所述,我期待找到一种方法来防止在我的 PHPUnit 测试期间在终端中打印 error_log() 消息。 在上面的示例中,被测方法通过 error_log('Don\'t show up'),
如标题所述,我期待找到一种方法来防止在我的 PHPUnit 测试期间在终端中打印 error_log() 消息。 在上面的示例中,被测方法通过 error_log('Don\'t show up'),
来自 Laravel 的所有日志都进入 storage/logs。不幸的是,我无权访问此目录。我什至无法检查是否有任何文件或阅读它们。我只能请求不会给我这些文件的日志。我会得到 error_log、a
php 函数 error_log() 允许您将日志发送到电子邮件,将第二个参数设置为 1。我这样做了,但我想在 html 中显示消息。代码如下所示: error_log($this->_errorMs
我正在编写一个查询我的数据库的函数,如果 mysql 查询由于某种原因出错,我希望我的函数返回一个值(在本例中为 -1),指示查询失败,而不是消失整个脚本。 通常我只使用这个结构: $result =
我有这个 PHP 代码: error_log('my message 1'); .... error_log('my message 2'); ... error_log('my message 3'
PHP 5.6 有什么方法可以定义使用error_log时显示的日期格式? 我用它来记录来自某个脚本的消息和错误。似乎 set_error_handler won't handle all error
我正在运行 nginx 和 PHP 5.5,当传递的字符串很长时,我所有的 error_log 消息都会被截断。 我已经更新了我的 php.ini 文件并将日志最大长度从 1024 增加到 0(无最大
我在这里做错了什么? 我在 .ini 文件中设置了 error_log 以及 error_reporting = E_ALL | E_STRICT. 我还缺少什么?这通常给了我。我希望在 .ini 文
如何在使用 error_log() 时插入换行符在 PHP 中? 我尝试使用 和 \n ,但这些都不起作用。 最佳答案 添加错误信息时使用双引号。 error_log("This is a two l
我是一名优秀的程序员,十分优秀!