基本上,我所做的是,利用ErrorDocument在接驳时拦截了404份文件,并把它放在空洞。 php.SedFile 然后将档案名称从圆顶中排出,然后在我sql数据库中搜索,获取数据并应用适当的头盔。
在我的发展中环境中(最新的LAMP服务器在乌旁边运行),所有东西似乎都行得通,但该网站正在GoDaddy接待,头盔返回似乎有一些问题。 我认为,GoDaddy返回了404人,然后发送了数据。
结果是,当我正确点击以这种方式处理的一个环节时,我可以拯救As,而所有东西都会奏效。 如果档案是图像,它就没有问题。 但是,如果我只是点击这个环节,而这是一个要下载而不是放在浏览器上的文件,那么我就在所有浏览器上都拿到“不是创始错误”。 共有404个错误,无论档案是否成功转让。 我的法典如下:
$folder = explode( "/" , $_SERVER["REQUEST_URI"] );
$pageName = $folder[sizeof($folder)-1];
$sql = "SELECT data, mimeType, OCTET_LENGTH(data) AS size FROM tblFiles WHERE fileName = ".$pageName." AND active=1;";
$result = mysql_query("$sql") or die();
$data = mysql_fetch_array($result);
header("HTTP/1.0 200 OK");
header("Content-Type: ".$data[ mimeType ]);
header("Content-Length: ".$data[ size ]);
echo $data[ data ];
以及htaccess案:
ErrorDocument 404 /FILES/dbFiles/getFile.php
现在,这是在《国际会计准则》/dbFiles的全文查阅档案。 我不知道GoDaddy是否指望在那里会遇到更多的困难,但似乎像在我自己的服务器上写的那样工作。
I ve tried numerous combinations of header info with no positive effect.
我的法典显然行之有效,但我似乎无法阻止404人发生。
Thanks! -Jer