Debian
如何為網路伺服器生成的程序設置環境變數?
我認為,在我的設置(debian etch、lighttpd)中,我的網站正在呼叫一個程序以通過 PHP 進行一些圖像處理。我想通過設置一個環境變數來改變這個程序的行為,最好不要改變網路應用程序。
這該怎麼做?=)
為 www-data 使用者擁有的所有程序設置 environemt 變數也可以,但我確信在這種情況下是否會尊重 .bashrc(?) 中的條目。
謝謝!
由於您使用的是 lighttpd fast-cgi,因此只需在 lighttpd 設置中使用bin-environment進行設置。
## Start an FastCGI server for php (needs the php5-cgi package) fastcgi.server = ( ".php" => (( "bin-path" => "/usr/bin/php-cgi", "socket" => "/tmp/php.socket", "max-procs" => 2, "idle-timeout" => 20, "bin-environment" => ( "PHP_FCGI_CHILDREN" => "4", "PHP_FCGI_MAX_REQUESTS" => "10000", ), "bin-copy-environment" => ( "PATH", "SHELL", "USER" ), "broken-scriptfilename" => "enable" )) )
您可以為程序建構一個包裝腳本,將您的環境設置添加到其中,然後執行包裝腳本而不是原始程序。
#!/bin/sh ENV=... /path/to/program