Skapa privat Google Maps-karta med bilder

Tråden skapades och har fått 2 svar. Det senaste inlägget skrevs .
1

Hej,

Vet inte riktigt om detta hamnar i rätt forumsavdelning, men hittade inte någon annan som kändes mer lämpad.

Jag vill skapa en Google Maps-karta som har sparade "nålar" som innehåller bilder från olika ställen.
Det är enkelt, men problemet är att det är bilder som jag bara vill att vissa personer ska ha tillgång till. Att skapa en egen karta som bara vissa får tillgång till är såklart också enkelt, men så vitt jag har sett går det bara att använda bilder genom <img>-länkar. Dvs de ligger någontans fria för alla att titta på.

Nu är det kanske inte så stor risk att folk hittar till dessa om de inte vet adressen, men det kommer ligga väldigt mycket arbete bakom att sammanställa alla dessa bilder och jag vill inte att någon konkurrent t ex ska få tillgång till det.

Har någon en lösning på detta problem?

  • Medlem
  • International user
  • 2009-03-20 11:42

Oftast är det tillräckligt att döpa om filerna till något obskyrt, tror ingen kommer hitta en bild som har filnamnet "d41d8cd98f00b204e9800998ecf8427e.jpg" - men det stoppar fortfarande inte spridning av länken, dvs bara dom har länken kan vem som helst kolla på bilden.

Har du tillgång till dynamiskt innehåll så kan du rendera en bild via en t ex en asp eller php sida genom att först kolla att användaren är behörig därefter skicka ut headers för att visa t ex en JPEG-fil och sen skriva ut innehållet i bildfilen.

Lite snabbt i PHP får jag det till detta:

// bild.php

// Är användaren inloggad?
if (isset($_SESSION['userid']) // Vi använder sessions i det här fallet 
{
  // Rendera en JPEG-fil
  header("Content-type: image/jpeg");
  print file_get_contents("/var/images/bild1.jpeg");
}
else
{
  die("Du har inte tillåtelse att vissa denna bild.");
}

Går man in på bild.php och är inloggad ser man bilden, annars får man upp att man inte har tillåtelse. Sen kan du med hjälp av t ex mod_rewrite skriva om urlen så att addressen "bild.jpeg" igentligen kör "bild.php".

På så sätt kan du lägga bilder utanför webrooten där du bara kommer åt dem från serversidan (mao kan klienterna inte bläddra sig fram till bilden).

Detta förutsätter dock att alla som vill se bilden måste vara inloggade.

Dude, that´s perfect!

Tusen tack!

Ursprungligen av Palm:

Oftast är det tillräckligt att döpa om filerna till något obskyrt, tror ingen kommer hitta en bild som har filnamnet "d41d8cd98f00b204e9800998ecf8427e.jpg" - men det stoppar fortfarande inte spridning av länken, dvs bara dom har länken kan vem som helst kolla på bilden.

Har du tillgång till dynamiskt innehåll så kan du rendera en bild via en t ex en asp eller php sida genom att först kolla att användaren är behörig därefter skicka ut headers för att visa t ex en JPEG-fil och sen skriva ut innehållet i bildfilen.

Lite snabbt i PHP får jag det till detta:

// bild.php

// Är användaren inloggad?
if (isset($_SESSION['userid']) // Vi använder sessions i det här fallet 
{
  // Rendera en JPEG-fil
  header("Content-type: image/jpeg");
  print file_get_contents("/var/images/bild1.jpeg");
}
else
{
  die("Du har inte tillåtelse att vissa denna bild.");
}

Går man in på bild.php och är inloggad ser man bilden, annars får man upp att man inte har tillåtelse. Sen kan du med hjälp av t ex mod_rewrite skriva om urlen så att addressen "bild.jpeg" igentligen kör "bild.php".

På så sätt kan du lägga bilder utanför webrooten där du bara kommer åt dem från serversidan (mao kan klienterna inte bläddra sig fram till bilden).

Detta förutsätter dock att alla som vill se bilden måste vara inloggade.

1
Bevaka tråden