如何配置PHP和nginx,使其仅显示特定IP地址的错误?

如何配置PHP和nginx,使其仅显示特定IP地址的错误?,php,nginx,Php,Nginx,如何配置PHP和nginx仅显示特定IP地址的错误?您可以首先将PHP设置为完全不显示错误(PHP.ini中的display\u errors=Off),然后在PHP.ini中使用auto\u prepend\u file指令包含以下脚本: <?php $allowed_ips = array('111.111.111.111', ...); if (in_array($_SERVER['REMOTE_ADDR'], $allowed_ips)) { ini_set('displa

如何配置PHP和nginx仅显示特定IP地址的错误?

您可以首先将PHP设置为完全不显示错误(
PHP.ini中的
display\u errors=Off
),然后在PHP.ini中使用
auto\u prepend\u file
指令包含以下脚本:

<?php
$allowed_ips = array('111.111.111.111', ...);
if (in_array($_SERVER['REMOTE_ADDR'], $allowed_ips)) {
    ini_set('display_errors', '1');
}

您可以首先将PHP设置为完全不显示错误(
PHP.ini中的
display\u errors=Off
),然后使用PHP.ini中的
auto\u prepend\u file
指令包含此脚本:

<?php
$allowed_ips = array('111.111.111.111', ...);
if (in_array($_SERVER['REMOTE_ADDR'], $allowed_ips)) {
    ini_set('display_errors', '1');
}

为什么不记录所有内容?在生产服务器上显示错误从来都不是一个好主意为什么不记录所有内容呢?在生产服务器上显示错误从来都不是一个好主意。有些类似致命错误的错误仍然不会在生产服务器上可见。是的,这是真的。虽然我想知道,因为这将是运行的第一件事,只有解析错误和未找到的静态包含将保持不可见。你同意吗?我对PHP的执行生命周期并不十分了解。我同意,是的,但我仍然认为这对于生产来说是不可接受的。我同意你的观点,尽管有时你确实会发现只在生产中出现的海森堡。日志记录确实是答案。@Sorin Sbarnea:我留下了评论,不值得单独回答;-)某些类型的错误,如致命的,仍然不可见的,是的,这是真的。虽然我想知道,因为这将是运行的第一件事,只有解析错误和未找到的静态包含将保持不可见。你同意吗?我对PHP的执行生命周期并不十分了解。我同意,是的,但我仍然认为这对于生产来说是不可接受的。我同意你的观点,尽管有时你确实会发现只在生产中出现的海森堡。日志记录确实是答案。@Sorin Sbarnea:我留下了评论,不值得单独回答;-)