Ankündigung

Einklappen
Keine Ankündigung bisher.

CSS - Pfad korrekt wiedergeben trotz mod_rewrite?

Einklappen

Neue Werbung 2019

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

  • CSS - Pfad korrekt wiedergeben trotz mod_rewrite?

    Hallo,

    hab mal wieder ein Problem und zwar nutze ich mod_rewrite in der Form von Ordnern. Also sowas

    datei.php?see=blub
    wird
    datei/blub.htm

    oder

    datei.php?see=blub&id=22
    wird
    datei/22/blub.htm

    Also ich bilde Unterordner. Jetzt allerdings bekomm ich auf den Seiten Probleme mit meinen CSS - Dateien. Die CSS an sich kann ich ja einfach über http://www.domain.de/style.css.

    Aber in der css sind halt Pfadangaben wie /images/file.gif oder so drin. Und bei der Variante mit dem mod_rewrite - Link sucht er ja dann auf einmal unter datei/22/images/file.gif bzw. datei/images/file.gif und findet dort natürlich nichts.

    Jetzt könnte ich natürlich auch in der CSS alle Angaben mit http://www.domain.de/images/file.gif machen, aber gibts da keine andere Lösung, sodass man irgendwo in der html oder so festleget, dass alle Pfadangaben in der css sich auf folgende URL beziehen oder ähnliches?

    Danke


  • #2
    Wieder mal total bescheiden beschrieben.

    - base path
    - rewrite condition
    --

    „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
    Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


    --

    Kommentar


    • #3
      Zitat von nikosch Beitrag anzeigen
      - base path
      Super...vielen Dank.

      Kommentar


      • #4
        Zitat von BartTheDevil89 Beitrag anzeigen
        Aber in der css sind halt Pfadangaben wie /images/file.gif oder so drin. Und bei der Variante mit dem mod_rewrite - Link sucht er ja dann auf einmal unter datei/22/images/file.gif bzw. datei/images/file.gif und findet dort natürlich nichts.
        Doch, wenn du wirklich /images/file.gif als Bildpfad angegeben hättest, dann würde das auch als http://example.com/images/file.gif abgerufen.

        Kommentar


        • #5
          Oh mist...ja tatsächlich. Hatte gedacht, dass es läuft, aber nur weil ich aufm Server keinen Unterordner habe. Sobald ich aber den / in der css wegmache, dann geht es nicht. Das ist jetzt meine Variante:

          <base href="http://www.domain.de">
          Und die CSS hat die Angaben so:

          images/grafik.gif
          Die Datei liegt tatsächlich unter =http://www.domain.de/images/grafik.gif
          Allerdings das läuft nicht. Es läuft nur, wenn ich ein "/" vor das images nehme.

          Kommentar


          • #6
            Naja, und? Dann mach es halt..
            --

            „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
            Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


            --

            Kommentar


            • #7
              Zitat von nikosch Beitrag anzeigen
              Naja, und? Dann mach es halt..
              Aber sobald ich es dann auf nem Unterordner laufen hab, dann läuft es ja nichtmehr. Beispielsweise aufm localhost unter http://localhost/folder/ bekomm ich die Grafiken ja nichtmehr.

              Kommentar


              • #8
                basepath http://localhost/folder/
                url(/images/grafik.gif)
                --

                „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                --

                Kommentar


                • #9
                  Zitat von nikosch Beitrag anzeigen
                  basepath http://localhost/folder/
                  url(/images/grafik.gif)
                  Ja genau das ist mein Setup derzeit aufm localhost und genau das funktioniert nicht. Habs auch schon mit verschiedenen Kombis aus mit "/" und ohne versucht, aber läuft nicht.
                  Wenn ich aber url(http://localhost/folder/images/grafik.gif) setze, dann läufts. Also die Grafik an sich lädt er schon.

                  Kommentar


                  • #10
                    Hmm, das überrascht mich. Aber es stimmt. Habs gerade nochmal gelesen: CSS-Pfadangaben sind immer relativ zum CSS-Filepath. Der basepath hat anscheinend keinen Einfluss darauf. Du kannst ergo nur relativ zum CSS adressieren. Da Verzeichnisstrukturen eines Projektes i.A. statisch sind, ist das unproblematisch. Ich mache das jedenfalls immer so.
                    --

                    „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                    Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                    --

                    Kommentar


                    • #11
                      Zitat von nikosch Beitrag anzeigen
                      Hmm, das überrascht mich. Aber es stimmt. Habs gerade nochmal gelesen: CSS-Pfadangaben sind immer relativ zum CSS-Filepath. Der basepath hat anscheinend keinen Einfluss darauf. Du kannst ergo nur relativ zum CSS adressieren. Da Verzeichnisstrukturen eines Projektes i.A. statisch sind, ist das unproblematisch. Ich mache das jedenfalls immer so.
                      Hmh schade....denn hab das Problem, dass ich mit nem kleinen Script so arbeiten muss, dass ich immer auch mal auf servern damit arbeite will, wo also auch verschiedene URLs, Unterordner, etc. auftreten.

                      Kommentar


                      • #12
                        Ich schätze mal, du hast so ne .htaccess datei. Probier mal ne RewriteCond in der Art
                        Code:
                        RewriteEngine on
                        RewriteCond %(REQUEST_URI) !\.(js|css|gif|jpg|png)$
                        RewriteRule 'wasAuchImmerDuDaStehenHast'
                        "My software never has bugs, it just develops random features."
                        "Real programmers don't comment. If it was hard to write, it should be hard to understand!"

                        Kommentar


                        • #13
                          Zitat von Paul.Schramenko Beitrag anzeigen
                          Probier mal ne RewriteCond in der Art
                          Code:
                          RewriteCond %(REQUEST_URI) !\.(js|css|gif|jpg|png)$
                          Nee damit läuft es leider auch nicht.

                          Kommentar


                          • #14
                            lol das witzige ist, bei läufts grad auch net =)
                            "My software never has bugs, it just develops random features."
                            "Real programmers don't comment. If it was hard to write, it should be hard to understand!"

                            Kommentar


                            • #15
                              Fehler lokalisiert... ums REQUEST_URI müssen geschweifte Klammern
                              PHP-Code:
                              RewriteCond %{REQUEST_URI} !\.(js|css|ico|gif|jpg|png|pdf)$ 
                              Mein Skript läuft auch wieder... Probiers so nochmal
                              "My software never has bugs, it just develops random features."
                              "Real programmers don't comment. If it was hard to write, it should be hard to understand!"

                              Kommentar

                              Lädt...
                              X