我想隐藏用户的图片网址,所以我使用的是php header()
函数,当我在Bluehost上托管我的网站时问题就出现了,它在localhost上运行正常。
这是我访问图像的功能。
function download($name = '', $tiny = '0') {
if ($name != '') {
$file = $this->mdl->get_file($name);
if($file){
$mime = mime_content_type('./'.$file->path.$file->name);
header('Content-Type: '.$mime);
echo file_get_contents('./'.$file->path.$file->name);
}
}
}
这是模型上的get_file函数:
function get_file($name=''){
if($name!=''){
return $this->db->select('*')
->from('docs')
->where('name',$name)
->get()
->row();
}
return false;
}
任何有用的答案都是适用的。
答案 0 :(得分:1)
只有在将任何数据发送到浏览器之前才能设置标题。
检查<?php
标记前的空格。
检查您的文件是否保存为没有BOM的UTF-8,BO标记可以解释为输出。
检查您的主机是否在页面中添加了其他内容/标题。
答案 1 :(得分:0)
基本上,当在php标记之外存在任何空格或新行或在标题函数之前打印的任何内容时,会出现此类问题。
ob_clean();