15

Apache 允许您使用 php_value 指令为虚拟主机设置 php.ini 值。

nginx有类似的东西吗?还有另一种方法可以在每个站点上设置 include_path 吗?

4

2 回答 2

27

现在,可以这样做:

fastcgi_param  PHP_VALUE  "include_path=/my/include/path";

更多信息在这里: http ://bugs.php.net/bug.php?id=51595

使用这种技术来设置 php 值,我已经成功地为多个虚拟主机设置了不同的“error_log”位置。

谢谢,PHP 和 NginX 伙计们!

于 2010-06-18T12:37:31.270 回答
1

Sean、php_value 和 php_admin_value 不适用于 nginx。这是 php-cgi 而不是 nginx 的限制。

您可以通过启动多个 PHP 实例并传入自定义 php.ini 来解决此问题,如下所示:

php-cgi -c /path/to/php.ini

您还可以在 PHP 代码中显式设置包含路径,如下所示:

$paths = array(
    PATH_PROJECT . 'lib/',
    PATH_PROJECT . 'lib/Doctrine/lib',
    PATH_PROJECT . 'application/doctrine/mappers/',
    PATH_PROJECT . 'application/lib',
    PATH_PROJECT . 'application/modules/',
    PATH_PROJECT . 'lib/classes',
    PATH_PROJECT . 'application/lib/reports/',
    get_include_path()
);

set_include_path(implode(PATH_SEPARATOR, $paths));
unset($paths);
于 2009-07-31T22:43:18.740 回答