我用php5-fpm运行nginx并想启用它display_errors.我正在运行一个虚拟主机,所以请帮助我们启用display_errors,display_startup_errors.
我试过修改/etc/php5/fpm/php.ini.
;display_errors
Default Value: On
Development Value: On
;Production Value: Off
;display_startup_errors
Default Value: On
Development Value: On
;Production Value: Off
;error_reporting
Default Value: E_ALL
Development Value: E_ALL
;Production Value: E_ALL & ~E_DEPRECATED
;html_errors
Default Value: On
Development Value: On
;Production value: Off
;log_errors
Default Value: On
Development Value: On
;Production Value: On
Run Code Online (Sandbox Code Playgroud)
是否需要ini为每个不同的虚拟主机提供多个文件,vhost是否会对php配置产生任何影响?
我也在尝试set_ini(),但它没有显示任何效果.我在php.ini文件中进行了更改后重新启动了nginx和php5-fpm .
Kev*_*udé 44
php.ini没有为php-fpm做什么.
如果您使用的是php-fpm:您必须在与Web应用程序关联的fpm池配置中提供配置更改.这些位置取决于您的系统.可能的位置是:
/etc/php-fpm.d/mydomain.conf (如果事情已经整齐地设置)/etc/php-fpm.conf (如果你只使用一个conf用于php-fpm)你的配置路径与我的不同,所以要四处看看你在那里有什么./etc/php-fpm.conf如果存在合适的conf,请勿进行更改/etc/php-fpm.d/.
如果您不使用php-fpm:使用正确的配置更新php.ini.
更正您的配置:在问题中显示的配置中,您有未注释的文档,而不是提供正确的设置.你最好撤消这些更改,因为PHP不会理解它们.
php-fpm的正确行是:
; enable display of errors
php_flag[display_errors] = on
php_flag[display_startup_errors] = on
Run Code Online (Sandbox Code Playgroud)
正常php的正确行是:
; enable display of errors
display_errors = On
display_startup_errors = On
Run Code Online (Sandbox Code Playgroud)
建议:不要在生产环境中使用这些选项.最好的祝愿.
Chr*_*ess 11
如果你有/etc/php5/fpm/php.ini(在Debian中使用,Ubuntu样式配置),那么对该文件的更改应该生效,并且通过对特定/etc/php5/fpm/pool.d/*.conf文件进行更改,可以进一步覆盖每个池的配置.
小智 7
在我的情况下Zend错误和NGinX - php5 fpm,工作方式如下:
只有我投入 public/index.php
error_reporting(E_ALL | E_STRICT);
ini_set('display_errors', 1);
Run Code Online (Sandbox Code Playgroud)
没有 If(){...}
但是如果只是把上面的代码,显示错误,会给出这样的:
Parse error: syntax error, unexpected '}', expecting ',' or ';' in /usr/local/nginx/html/ZendSkeletonApplication/module/Album/src/Album/Controller/AlbumController.php on line 12
Run Code Online (Sandbox Code Playgroud)
另一件事!设置此代码:
'display_not_found_reason' => true,
'display_exceptions' => true,
Run Code Online (Sandbox Code Playgroud)
在module.config.php中,像这样:
'view_manager' => array(
'template_path_stack' => array(
'album' => __DIR__ . '/../view',
'display_not_found_reason' => true,
'display_exceptions' => true,
),
),
Run Code Online (Sandbox Code Playgroud)
我在屏幕上看到error.log的所有错误:
Fatal error: Uncaught exception 'Zend\View\Exception\InvalidArgumentException' with message 'Invalid path provided; must be a string, received boolean' in /usr/local/nginx/html/ZendSkeletonApplication/vendor/zendframework/zendframework/library/Zend/View/Resolver/TemplatePathStack.php:201 Stack trace: #0 /usr/local/nginx/html/ZendSkeletonApplication/vendor/zendframework/zendframework/library/Zend/View/Resolver/TemplatePathStack.php(149): Zend\View\Resolver\TemplatePathStack->addPath(true) #1 /usr/local/nginx/html/ZendSkeletonApplication/vendor/zendframework/zendframework/library/Zend/Mvc/Service/ViewTemplatePathStackFactory.php(38): Zend\View\Resolver\TemplatePathStack->addPaths(Array) #2 [internal function]: Zend\Mvc\Service\ViewTemplatePathStackFactory->createService(Object(Zend\ServiceManager\ServiceManager), 'viewtemplatepat...', 'ViewTemplatePat...') #3 /usr/local/nginx/html/ZendSkeletonApplication/vendor/zendframework/zendframework/library/Zend/ServiceManager/ServiceManager.php(939): call_user_func(Array, Object(Zend in /usr/local/nginx/html/ZendSkeletonApplication/vendor/zendframework/zendframework/library/Zend/ServiceManager/ServiceManager.php on line 946
Run Code Online (Sandbox Code Playgroud)
我没有在系统(Ubuntu 14.04)中将配置文件作为php-fpm触摸.
| 归档时间: |
|
| 查看次数: |
72485 次 |
| 最近记录: |