IMG mit absolutem Pfad auf dem Server

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • IMG mit absolutem Pfad auf dem Server

    Ich würde gern ein Bild über den absoluten Pfad des Servers anzeigen lassen, eigentlich nicht schwer dachte ich mir, jetzt bin ich aber langsam am verzweicheln. Folgendes läuft bei meinem Linux-Server mit PHP 4 nicht:

    Code:
    // Pfad zum Bild
    $Path = "/srv/www/htdocs/web6/html/Bild.jpg";
    
    // Bild soll angezeigt werden
    <img src="<? echo $Path; ?>">
    Der Pfad stimmt, denn folgendes klappt:

    Code:
    $size = getimagesize($Path); 
    echo $size[0] ." ". $size[1];
    Liegt es vielleicht an einer Sicherheitseinstellung bei PHP oder Apache ? Den Safe_Mode habe ich bereits ausgeschalten.

  • #2
    dein webroot beginnt hier:
    /srv/www/htdocs/web6/html/

    und wenn du deine img-src zusätzlich damit reinschreibst, willst du diesen path am server abrufen.
    /srv/www/htdocs/web6/html/srv/www/htdocs/web6/html/Bild.jpg

    frage beantwortet?
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Leider nein ! Ich habe unter web6 mehrere Domains laufen. Die jeweils andere Stammverzeichnisse haben. Z.B.
      Code:
      /srv/www/htdocs/web6/html/domain1/
      /srv/www/htdocs/web6/html/domain2/
      zudem gibt es einen Bilderordner der für alle gilt
      Code:
      /srv/www/htdocs/web6/html/bilder/
      Den Ordner bzw. die Bilder sollen nun aus allen Domains angesprochen werden können. Bisher benutze ich dafür die URL das Bilderordner z.B.

      <img src="http://www.urlderbilddomain/bilder/bild1.jpg">

      Hier leidet aber die Performance der Seite ungemein trotz DSL. Jetzt suche ich nach einer Möglichkeit die Bilder direkt vom Server aufzurufen !

      Kommentar


      • #4
        ich glaube du verstehst das nciht richtig. wenn du durch die bilder einbußen in der geschwindigkeit hast, ändert es nichts daran, wenn du die in einem anderen verzeichnis ablegst.

        mache die bilder lieber mal kleiner.
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          natürlich funktioniert dein beispiel nicht. denn der user bekommt folgendes übermittelt:

          Code:
          <img src="/srv/www/htdocs/web6/html/Bild.jpg">
          was den browser dazu veranlässt, nach folgender url zu suchen:
          Code:
          http://www.deineurl.de/srv/www/htdocs/web6/html/Bild.jpg
          klar ist der pfad richtig, denn php sucht (im gegensatz zum browser) auf dem fs des servers nach dem pfad (drum funktioniert getimagesize()).

          abraxax hat selbstverständlich recht - der browser muss sowieso für jedes bild eine neue anfrage an den webserver schicken, egal ob der pfad absolut oder relativ angegeben wird. der einzige unterschied liegt in der flexibilität u. portabilität deiner daten.

          wenn beim aufruf deiner www.domain1.de direkt auf /srv/www/htdocs/web6/html/domain1/ zugegriffen wird, wirst du mit relativer pfadangabe nicht höher kommen können und somit keine dateien verknüpfen können, die parallel zum ordner domain1 liegen.

          Kommentar


          • #6
            Docroot: /foo/bar/www
            Bilder in: /foo/images
            Symlink: /foo/bar/www/images -> /foo/images
            HTML: <img src="/www/images/some.pic">

            funktioniert mit entsprechender Serverkonfiguration/.htaccess.
            Schneller gehts vielleicht mit src="file://foo/images/some.pic", aber nur wenn Browser und Bild auf einem Rechner sind - also nicht übers Web, weil nicht übern Webserver. Is klar ne?

            Kommentar


            • #7
              Prima ! Dann hab ich ja doch noch ne Möglichkeit direkt auf die Dateien zuzugreifen !

              Kannst du mir vielleicht kurz erklären wie ich den Symlink setzte und wie ich die .htaccess konfigurieren muß !

              Kommentar


              • #8
                linken geht im terminal/console unter linux mit
                ln -s pfadoriginal pfadlink

                was du mit der htaccess anstellen musst weis ich grad ned, google mal
                MfG
                aim
                Lies mich jetzt!
                - OT-Tags-Liebhaber und BB-Code-Einrücker -

                Kommentar


                • #9
                  Hallo,

                  IMHO ist deine bisherige Lösung eigentlich eh die beste die du da machen kannst, also die Bilder von allen Domains aus über eine einheitliche Domain abzurufen.

                  Wenn in diesem Fall nämlich ein User über eine Seite auf Domain1.de ein Bild abruft wird dieses Bild von Bilddomain.de abgerufen, ebenso wenn er später das gleiche Bild über eine Seite auf Domain2.de aufruft wird wieder das Bild von Bilddomain.de aufgerufen, allerdings sollte der Browser dieses Bild bereits gecacht haben und es nun gar nicht mehr von deinem Server holen wollen.

                  Wenn du das nun so abänderst dass das gleiche Bild über:
                  Domain1.de/bilder/bild.jpg und über
                  Domain2.de/bilder/bild.jpg abgerufen werden kann wird der Browser gar nicht auf die Idee kommen das bereits gecachte Bild zu verwenden sondern wird es erneut von deinem Server holen.

                  Wie hoch die Wahrscheinlichkeit ist, das ein User das gleiche Bild über 2 verschiedene Seiten betrachten will sei dahingestellt, für den Fall das es aber doch vorkommt dürfte deine bisherige Vorgehensweise eigentlich die beste sein.

                  Gruss
                  Quetschi

                  Edit:
                  Hier leidet aber die Performance der Seite ungemein trotz DSL.
                  Was meinst eigentlich damit? Die Geschwindigkeit mit der du Daten aus dem Netz empfangen kannst hat vorerst mal nix mit der Geschwindigkeit zu tun mit der dein Server Daten zur Verfügung stellen kann.
                  Zuletzt geändert von Quetschi; 21.04.2005, 09:58.
                  Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
                  Schön - etwas Geschichte kann ja nicht schaden.
                  Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

                  Kommentar


                  • #10
                    Original geschrieben von Quetschi
                    IMHO ist deine bisherige Lösung eigentlich eh die beste die du da machen kannst, also die Bilder von allen Domains aus über eine einheitliche Domain abzurufen.

                    Wenn in diesem Fall nämlich ein User über eine Seite auf Domain1.de ein Bild abruft wird dieses Bild von Bilddomain.de abgerufen, ebenso wenn er später das gleiche Bild über eine Seite auf Domain2.de aufruft wird wieder das Bild von Bilddomain.de aufgerufen, allerdings sollte der Browser dieses Bild bereits gecacht haben und es nun gar nicht mehr von deinem Server holen wollen.
                    das kann aber auch nachteile haben.

                    die meisten browser bieten heutzutage die möglichkeit, ganz pauschal bilder von anderen "servern" zu blocken - einfach, um der werbeflut auf sehr einfache weise zu entgehen, denn der großteil der werbebanner wird immer noch von extern eingebunden.

                    je nachdem, wie detailiert so ein "filter" da unterscheidet - gleiche domain, subdomain, server - bekäme ein besucher also u.U. die bilder gar nicht zu sehen.
                    I don't believe in rebirth. Actually, I never did in my whole lives.

                    Kommentar


                    • #11
                      Das stimmt auch wieder, aber es ist dennoch auch sehr vielen Websites so anzutreffen, dass Bilder absolut mit vorgestelltem http://.... von einem anderen Server und/oder Domain geholt werden. Wer hier mit sehr 'strengen' Einstellungen surft, muss IMHO öfter damit rechnen mal ein Bild nicht sehen zu können.

                      Letztlich muss man da wahrscheinlich einfach für sich entscheiden welches 'Risiko' man eher eingehen will. Da anzunehmen ist das der gleiche User nur höchst selten das gleiche Bild über eine andere Seite anfordern würde, könnte es dann doch sinnvoller sein die Bilder über die jeweilige Domain zu holen und nicht von einer zentralen.
                      Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
                      Schön - etwas Geschichte kann ja nicht schaden.
                      Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

                      Kommentar

                      Lädt...
                      X