2009-07-31 33 views

回答

24

,這是可以做到這樣:

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

這裏的更多信息: http://bugs.php.net/bug.php?id=51595

使用此技術來設置php值,我已成功地爲多個虛擬主機設置了不同的「error_log」位置。

謝謝,PHP和NginX的傢伙!

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); 
+0

謝謝!我還發現這個鏈接http://forum.slicehost.com/comments.php?DiscussionID=3087 - 使用php本身設置它並不可行,因爲項目設置的方式(沒有前端控制器)。 – 2009-07-31 22:59:06

+0

我切換到較新的答案 – 2010-06-21 18:11:48