为什么apache不会从conf.d加载一个符号链接的文件?

我有一个Apacheconfiguration文件,当它直接放在/etc/httpd/conf.d/foo.conf中时,它工作的很好。 但是,当我将其他文件移动到其他地方时(例如,将其移至/tmp/foo.conf),然后使用ln -s /tmp/foo.conf /etc/httpd/conf.d创build符号链接,则apache将失败在启动时:

httpd: could not open document config file /etc/httpd/conf.d/foo.conf

我已经尝试使文件和符号链接模式777,并试图改变他们拥有的Apache用户。

看起来像apache没有加载文件纯粹是作为一个符号链接的基础上,但我敢肯定,我已经成功地在其他机器上使用符号链接。 有什么我失踪? apache是​​否有拒绝加载configuration文件的选项,如果它们是符号链接?

操作系统是CentOS 4.4,Apache 2.0.52。

在此服务器上启用SELinux吗? 我不知道这是否停止正确加载这个符号链接的Apache?

apache用户的权限不应该像通常一样运行apache以root身份运行,然后以apache用户(或任何user指令)启动webserver。 我相信这将是在configuration文件加载后。

你可以猫的符号链接?

而不是从conf.d创build一个符号链接到任何地方,你可以把文件放在conf.d目录下,并在conf.d中创build一个符号链接到文件。 语法示例: ln -s /etc/httpd/conf.d/foo.conf /tmp/foo.conf

另外,使用硬链接,所以这是在两个地方的普通文件。 一个文件有两个位置。 示例语法: ln /tmp/foo.conf /etc/httpd/conf.d请注意,只有两个位置在同一个文件系统上才能使用。