I recently moved to S3 to DigitalOccean Spaces and everything seems to work perfectly, but i noticed my images are not working correctly, every other type of archive is working just fine. My image binary is not being shown in the browser. Does anyone have a hint(every other kind of file works just fine)?
This is my php code
{
require_login();
$db = new db();
$sql = "SELECT * FROM uploads WHERE id = {$id}";
if (!super()) $sql .= " AND empresa = " . session('empresa');
$file = $db->row($sql);
if (!$file || !session('empresa')) {
return json_encode(
[
'error' => true,
'message' => 'File not found or you do not have access to it.'
]
);
}
$content = Storage::read(
$file->empresa . '/' . $file->modulo . '/' . $file->nome_atual
);
header("Content-Type: {$file->ext}");
header('Content-Disposition: inline; filename="' . $file->nome . '"');
header('Cache-Control: private, max-age=0, must-revalidate');
header('Pragma: public');
header('Content-Transfer-Encoding: binary');
header('Accept-Ranges: bytes');
echo $content;
}```
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
HeY!
This is quite interesting, I don’t think that I’ve seen this one before. Would you mind sharing a bit more information about your setup:
Content-Type for the images when storing them in Spaces?Any additional information you can provide will be very helpful in diagnosing the issue.
- Bobby
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
Full documentation for every DigitalOcean product.
The Wave has everything you need to know about building a business, from raising funding to marketing your product.
Stay up to date by signing up for DigitalOcean’s Infrastructure as a Newsletter.
New accounts only. By submitting your email you agree to our Privacy Policy
Scale up as you grow — whether you're running one virtual machine or ten thousand.
Sign up and get $200 in credit for your first 60 days with DigitalOcean.*
*This promotional offer applies to new accounts only.