在Ubuntu 10.10上查找(或启用?!)php.ini

嗨!

今天我离开我的舒适区,想编辑我的php.ini文件和…客人是什么? 它不存在!

$ php --ini Configuration File (php.ini) Path: /usr/local/lib Loaded Configuration File: (none) Scan for additional .ini files in: (none) Additional .ini files parsed: (none) 

加载configuration文件:(无)

我勒个去? 我从来没有见过这..是一种创build或启用PHP ini的方法?


我自己编译它:

 $ php -v PHP 5.3.3 (cli) (built: Dec 3 2010 16:08:11) Copyright (c) 1997-2010 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies 

如果您自己编译PHP而不更改默认的PHP inipath,它会在/usr/local/lib/searchphp.ini。 所以把php.ini放在/usr/local/lib/php.ini

在PHP包中,有一个php.inibuild议可以复制到该位置(将dir改为php-5.3.3):

 sudo cp php.ini-recommended /usr/local/lib/php.ini 

使用find来查找文件:

 find / -name "php.ini" 2> /dev/null 

2> /dev/null会因为权限错误而隐藏STDERR。

其实… Ubuntu 10.10(maverick) 确实提供了PHP 5.3.3作为标准的apt软件包系统的一部分。 如果你安装了php-fpm软件包,你甚至可以得到内build的“新”FPM(我期望这是你首先想要5.3.3的全部原因)。

请查看packages.ubuntu.com以获取certificate

这就是说 – 如果你自己构build了PHP,并没有指定任何特殊的选项来configuration,那么--prefix默认为/usr/local/ ,– --with-config-file-path默认为/usr/local/lib 。 所以PHP会查找/usr/local/lib/php.ini

您可以通过设置(例如)– --with-config-file-path=/usr/local/etc作为./configure选项来更改此设置。


为了完整起见,在10.10之前版本的Ubuntu(其中php 5.3.3不是基本发行版的一部分)中,可以通过dotdeb.org获得php 5.3.3的二进制apt-packages。 dotdeb回购在Ubuntu 8.04 Hardy上效果很好。 在10.04 Lucid上,他们仍然可以工作,但你必须手动安装一些其他的依赖(这是一种拖动)。 无论哪种方式,请按照“ Dotdeb说明”页面上的说明进行操作 。

从PHP5开始,Ubuntu 10.10或更高版本中的php.ini文件位于:

 /etc/php5/apache2/php.ini 

在ubuntu中的php.ini被错误地保存在/etc/php5/apache2/php.ini ,你没有,因为你没有使用这个sudo apt-get install php5-cli安装phpcli sudo apt-get install php5-cli

安装后的输出将是

 Configuration File (php.ini) Path: /etc/php5/cli Loaded Configuration File: /etc/php5/cli/php.ini Scan for additional .ini files in: /etc/php5/cli/conf.d Additional .ini files parsed: /etc/php5/cli/conf.d/curl.ini, /etc/php5/cli/conf.d/gd.ini, /etc/php5/cli/conf.d/mcrypt.ini, /etc/php5/cli/conf.d/mysql.ini, /etc/php5/cli/conf.d/mysqli.ini, /etc/php5/cli/conf.d/pdo.ini, /etc/php5/cli/conf.d/pdo_mysql.ini, /etc/php5/cli/conf.d/pdo_sqlite.ini, /etc/php5/cli/conf.d/sqlite.ini, /etc/php5/cli/conf.d/sqlite3.ini, /etc/php5/cli/conf.d/xdebug.ini, /etc/php5/cli/conf.d/zend-framework.ini 

我确实有PHP 5.3.3

php -v

 PHP 5.3.3-1ubuntu9.1 with Suhosin-Patch (cli) (built: Oct 15 2010 14:17:04) Copyright (c) 1997-2009 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies with Xdebug v2.1.0, Copyright (c) 2002-2010, by Derick Rethans