lighttpd 没有使全局环境变量对可执行文件可用
Posted
技术标签:
【中文标题】lighttpd 没有使全局环境变量对可执行文件可用【英文标题】:lighttpd not making global environment variables availble to executables 【发布时间】:2015-05-03 07:07:51 【问题描述】:如何设置 lighttpd 以使生成的进程可以使用环境变量?
我有一个通过 CGI 作为 URL 调用的可执行文件(例如 http://.../cgi-bin/executable.bin)。
可执行文件需要加载库并使用export FOO=BAR
读取在/etc/profile
中设置的环境变量。
当我尝试访问该 URL 时,它会生成内部服务器错误 (500),这是由一个空的环境变量引起的,该变量在 /etc/profile
中正确设置。
【问题讨论】:
【参考方案1】:我最终在modules.conf
中启用了mod_setenv
,并像这样包含了我需要的每个环境变量:
##
## mod_setenv
##
setenv.add-environment = ( "PATH" => env.PATH,
"WSFC_HOME" => env.WSFC_HOME,
"LD_LIBRARY_PATH" => env.LD_LIBRARY_PATH )
【讨论】:
以上是关于lighttpd 没有使全局环境变量对可执行文件可用的主要内容,如果未能解决你的问题,请参考以下文章
Windows Vista 产品兼容性讲座 - 对可执行文件签名 Code signing Procedure