Obrázek z lokálního serveru na internet

Kategorie: Tipy & triky
Obrázek z lokálního serveru na internet

Zobrazení obrázku z lokálního serveru na internet přes server s veřejnou IP.

Potřeboval jsem zobrazit graf (ve formátu obrázku), který je přístupný z lokální sítě na internet. Bohužel to zařízení není dostupné z internetu. V té samé síti se ale nachází Raspberry PI, které dostupné z internetu už je.

Stačí tedy jen stáhnout obrázek, uložit jej do Raspberry PI (graf se mění co 5 minut) a následně ho zobrazit. Velice jednoduché řešení. Proč ale při každém požadavku znovu stahovat ten samý obrázek, když se nemění nijak často. Další možností bylo stáhnout obrázek jen v případě, že ten současný je starší více jak 5 minut. Řešení opět požaduje uložení obrázku.

Jako nejlepší mi přišlo načíst obrázek, převést ho do kódování base64 a následně ho zobrazit. Tím odpadá nutnost něco ukládat, ovšem se trošku prodlužuje doba načtení stránky. V následujícím kódu stačí jen upravit adresu k obrázku v proměnné $image a titulek obrázku.

<?php
 $image = 'https://10.158.21.1/graphs/iface/wan/daily.gif';
 $imageData = base64_encode(file_get_contents($image));
 $imageSrc = 'data: '.mime_content_type($image).';base64,'.$imageData;
 echo '<img src="'.$imageSrc.'" title="Daily Graph (5 Minute Average)">';
?>

Sdílet

Komentáře

postPřidat komentář

Nebyly přidány žádné komentáře.