php.ini-production 与 php.ini-development 的差别

2014-09-17 15:58:57 +08:00
 cdffh

php编译完成过后会生成两个文件
php.ini-production
php.ini-development
分别用在生产环境和开发环境
他们之间得区别如下(php版本 5.4.23):

'./configure' '--prefix=/usr/local/php' '--enable-fpm' '--with-fpm-user=www-data' '--with-fpm-group=www-data' '--with-curl' '--with-mcrypt' '--enable-mbstring' '--enable-pdo' '--with-pdo-mysql=mysqlnd' '--with-mysqli=mysqlnd' '--with-mysql=mysqlnd' '--with-openssl' '--with-imap-ssl' '--with-gd' '--with-jpeg-dir=/usr/lib/' '--with-png-dir=/usr/lib/' '--enable-exif' '--enable-zip'

86行:

php.ini-production为:
;This is php.ini-production INI file.
php.ini-development为:
;This is php.ini-delelopment INI file.
这个不做解释

462行:

php.ini-production为:

error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT

php.ini-development为:

error_reporting = E_ALL

error_reporting为php报错设置
生产环境的设置为显示所有错误 除了使用弃用函数得错误和建议改变以提高代码兼容性的错误
开发环境的设置为显示所有错误

479行

php.ini-production为:

display_errors = Off

php.ini-development为:

display_errors = On

该选项设置是否将错误信息作为输出的一部分显示到屏幕
生产环境为不显示
开发环境为显示

490行

php.ini-production为:

display_startup_errors = Off

php.ini-development为:

display_startup_errors = On

该选项设置是否将输出启动错误信息
生产环境为不显示
开发环境为显示

534行

php.ini-production为:

track_errors = Off

php.ini-development为:

track_errors = On

如果开启,最后的一个错误将永远存在于变量$php_errormsg 中。
生产环境为关闭
开发环境为开启

755行

php.ini-production比php.ini-development少一个空格 无影响

1224行

php.ini-production为:

mysqlnd.collect_memory_statistics = Off

php.ini-development为:

mysqlnd.collect_memory_statistics = On

是否启用mysql内存访问统计,可以通过下列函数获取信息mysqli_get_client_stats(), mysqli_get_connection_stats(), mysqli_get_cache_stats()
生产环境为关闭
开发环境为打开

1493行

php.ini-production为:

mysqlnd.collect_memory_statistics = Off

php.ini-development为:

mysqlnd.collect_memory_statistics = On

PHP 4.2.3 以及更低版本有一个未公开的特性/错误,它允许用户在 register_globals 被禁用的情况下在全局范围内初始化一个会话变量。PHP 4.3.0 及更高版本会在使用此特性时并且启用了 session.bug_compat_warn 时发出警告。此特性/错误可以通过关闭此选项而禁用。
生产环境为关闭
开发环境为打开

1502行

php.ini-production为:

mysqlnd.collect_memory_statistics = Off

php.ini-development为:

mysqlnd.collect_memory_statistics = On

PHP 4.2.3 以及更低版本有一个未公开的特性/错误,它允许用户在 register_globals 被禁用的情况下在全局范围内初始化一个会话变量。PHP 4.3.0 及更高版本会在使用此特性时并且同时启用了 session.bug_compat_42 和 session.bug_compat_warn 时发出警告。
生产环境为关闭
开发环境为打开

本来题目是
php.ini-production 与 php.ini-development 的区别
因为我之前为了测试markdown在沙盒发了一次同样标题的 v2ex提示我不能发标题相同得文章 - -
所以就叫差别了。

4674 次点击
所在节点    PHP
1 条回复
cdffh
2014-09-17 16:00:14 +08:00
@Livid 这个小细节可不可以改进下。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/134006

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX