1

我正在尝试从重写的 URL 发送文件。在 .htaccess 文件中,我有:

RewriteRule ^foo$ foo.php [L]

在 foo.php 中:

header("x-sendfile: ".$_SERVER["DOCUMENT_ROOT"]."/filesdir/test.txt");

直接浏览到 foo.php 时,我看到了文件的内容,但是当浏览到 /foo 时,我得到 404。

我试图搜索网络,但除了将 foo 重定向到 foo.php 之外找不到任何解决方案

有谁知道问题出在哪里以及如何解决?

4

1 回答 1

0

我解决了这个问题。

在 httpd.conf 中有 XSendFilePath 指令,它是一个已解析的符号路径,而在 php 中,“filesdir”实际上是 XSendFilePath 中路径的符号链接。

我已将符号链接添加到 XSendFilePath,现在一切正常!

于 2012-10-09T23:29:59.657 回答