PHP错误日志级别控制:htaccess与php.ini与代码和virtualhost
作者:互联网
我在WAMP本地服务器中有一个虚拟主机,在其中设置了日志文件.
我想将我的PHP日志错误级别更改为仅警告和错误.
最好的方法应该是.htaccess,我尝试了以下解决方案:
How to disable notice and warning in PHP within .htaccess file?
不要工作(也要尝试其他人).
最后转到了php.ini文件,但是灵活性较差.
1)该级别错误指令的优先级是哪些? (php.ini vs htaccess vs代码)
我猜那个命令?
2)为什么不能在.htaccess中工作?
我只是将其设置在.htaccess之上,但没有工作.
解决方法:
我的建议是使用httpd environment variable.
这可以作为标记来通知您的Web应用程序有关环境.假设您有一个白色标签的产品,例如在设置特定虚拟主机应使用的配置时,它可能会很有用.
<VirtualHost *:80>
DocumentRoot "/srv/www/foo/public"
ServerName foo.com
<Directory /srv/www/foo/public>
# production | development | staging
SetEnv APPLICATION_ENV development
...
然后在您的PHP代码中,您将像这样访问它:
<?php
define('APPLICATION_ENV_LOCAL', 'local');
define('APPLICATION_ENV_DEVELOPMENT', 'development');
define('APPLICATION_ENV_STAGING', 'staging');
define('APPLICATION_ENV_PRODUCTION', 'production');
$app_env = (getenv('APPLICATION_ENV')) ? getenv('APPLICATION_ENV') : false;
if (empty($app_env) || ! in_array($app_env, array(APPLICATION_ENV_LOCAL, APPLICATION_ENV_DEVELOPMENT, APPLICATION_ENV_STAGING, APPLICATION_ENV_PRODUCTION))) {
throw new Exception("APPLICATION ENV IS NOT SPECIFIED OR IS INVALID.");
}
我要做的是根据环境包含完全独立的config / INI类型文件.那些可以确定错误报告的行为,维护不同的数据库连接,其他取决于应用程序环境的东西.
标签:ini,error-logging,php,htaccess 来源: https://codeday.me/bug/20191025/1926646.html