Bri*_*ian 3 php apache mod-rewrite jpeg header
我正在使用Apache mod_rewrite将JPG文件的请求路由到我的Web根目录之外的目录.
它通常很好,但有一些图像不显示.然后我意识到当我get_headers()在我的图像URL上使用PHP的函数时,它们都返回
Content-Type: text/html; charset=UTF-8而不是正确的image/jpeg头类型.
我已经尝试明确设置Content-Type: image/jpeg标题,但仍然没有我的图像返回正确的标题 - 虽然大多数确实正确显示,但我不知道为什么.
如何确保在重定向时通过正确的标头发送JPG文件mod_rewrite?
Rob*_*bri 10
这就是你能做的.创建一个PHP文件,该文件将获取正确的文件并将其传递通过
<?php
$sImage = 'imagename.jpg';
header("Content-Type: image/jpeg");
header("Content-Length: " .(string)(filesize($sImage)) );
echo file_get_contents($sImage);
Run Code Online (Sandbox Code Playgroud)
要么
<?php
$sImage = 'imagename.jpg';
$rFP = fopen($sImage, 'rb');
header("Content-Type: image/jpeg");
header("Content-Length: " .(string)(filesize($sImage)) );
fpassthru($rFP);
exit;
Run Code Online (Sandbox Code Playgroud)
您还可以使用带有标志的mod_rewrite 设置Content-Type标头字段T:
RewriteRule … … [T=image/jpeg]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
21422 次 |
| 最近记录: |