比如用户上传了一个文件,叫做×××.bmp 我在服务器端接受的时候,将其文件名用urlencode编码成为如下格式: 1069294662%CE%D2%B0%AE%B1%B1%BC%AB%B9%E2%C4%C7.bmp (前面加入了一个时间戳) 然后我想在浏览器上输入 http://localhost/upload/1069294662%CE%D2%B0%AE%B1%B1%BC%AB%B9%E2%C4%C7.bmp 来打开这个图片,则apache返回的结果是:Forbidden You don't have permission to access /upload/1069294662ÎÒ°®±±¼«¹âÄÇ.bmp on this server. -------------------------------------------------------------------------------- Apache/2.0.43 Server at localhost Port 80不知道是什么错误
改了还是不行,我在服务器端的upload目录有1069328869中文.bmp的文件 在显示的时候,按照你说的做,得到的链接就是: <a href=../upload/1069328869%D6%D0%CE%C4.bmp target=_blank class=top-zi>中文.bmp</a> 然后点击这个链接,得到的结果就是如下的显示:Forbidden You don't have permission to access /upload/1069328869ÖÐÎÄ.bmp on this server. --------------------------------------------------------------------------- Apache/2.0.43 Server at localhost Port 80好像%号的编码不能正确的识别
并且上传之后还要显示出链接
现在的问题是在win下没有问题,但传到linux上就不行了
比如upload/测试.bmp,在linux的服务器上就不能打开
我在服务器端接受的时候,将其文件名用urlencode编码成为如下格式:
1069294662%CE%D2%B0%AE%B1%B1%BC%AB%B9%E2%C4%C7.bmp
(前面加入了一个时间戳)
然后我想在浏览器上输入
http://localhost/upload/1069294662%CE%D2%B0%AE%B1%B1%BC%AB%B9%E2%C4%C7.bmp
来打开这个图片,则apache返回的结果是:Forbidden
You don't have permission to access /upload/1069294662ÎÒ°®±±¼«¹âÄÇ.bmp on this server.
--------------------------------------------------------------------------------
Apache/2.0.43 Server at localhost Port 80不知道是什么错误
apache没有读权限
例如链接到图片$picname = "中文.bmp";
echo "<a href=\"urlencode($picname)\">$picname</a>";
在显示的时候,按照你说的做,得到的链接就是:
<a href=../upload/1069328869%D6%D0%CE%C4.bmp target=_blank class=top-zi>中文.bmp</a>
然后点击这个链接,得到的结果就是如下的显示:Forbidden
You don't have permission to access /upload/1069328869ÖÐÎÄ.bmp on this server.
---------------------------------------------------------------------------
Apache/2.0.43 Server at localhost Port 80好像%号的编码不能正确的识别
代码如下:
if($row[5])
{
echo "<tr class=deepblue-zi height=30><td>";
$filename = substr($row[5], 20); //取出文件名(例如:中文.bmp)
$path = substr($row[5], 0, 20); //取出路径名(../upload/10位的时间戳)
$str = utf8_encode($filename); //对包含中文的文件名编码
echo "<a href=$path"."$str target=_blank class=top-zi>";
echo $filename;
echo "</a>";
echo "</td></tr>";
}