Programer: Problem: mehrere js Dateien mit HTML einbinden

Ich habe ein Problem:

Wenn ich am Ende des <body> Tags folgendes schreibe:

<script src="script1.js"></script>

<script src="script2.js"></script>

Wird nur das 1. Script eingebunden.

Beide Scripte enthalten jQuery (im <head> Tag eingebunden)

Wie kann ich das lösen?

  1. Hallo,

    Ich habe ein Problem:

    Wenn ich am Ende des <body> Tags folgendes schreibe:

    <script src="script1.js"></script>
    <script src="script2.js"></script>
    

    Wird nur das 1. Script eingebunden.

    dann machst du irgendwas falsch. Was es ist, geht aber aus deiner Beschreibung noch nicht hervor. Kannst du ein Online-Beispiel zur Verfügung stellen?

    Beide Scripte enthalten jQuery (im <head> Tag eingebunden)

    Das ist unerheblich. Übrigens meinst du nicht Tag, sondern Element (weiter oben auch).

    So long,
     Martin

    1. Im Netzwerk-Log steht bei der Datei script2.js: 403 not modified

      Was bedeutet das? Ist es eine Erklärung für das Problem?

      mfg Programer

      1. Hi,

        Im Netzwerk-Log steht bei der Datei script2.js: 403 not modified

        Was bedeutet das?

        es bedeutet, dass der Browser diese Ressource im Cache hat und beim Server angefragt hat, ob die noch aktuell ist; und der Server antwortet: Nimm deine gecachte Version, meine ist auch nicht aktueller.

        Ist es eine Erklärung für das Problem?

        Nein, das ist ein ganz normaler Vorgang in HTTP.

        Ciao,
         Martin

      2. Tach!

        Im Netzwerk-Log steht bei der Datei script2.js: 403 not modified

        Was bedeutet das? Ist es eine Erklärung für das Problem?

        304 ist Not Modified, 403 wäre Forbidden.

        Not Modified heißt, dass der Server das Zeug nicht noch einmal schickt, weil es zum Request des Clients nichts neues gibt. Dieser hat dem Server mitgeteilt, von wann seine zwischengespeicherte Version ist. Am Ende heißt das, der Browser nimmt seine Version aus dem Cache. Es heißt nicht, dass der Browser ganz leer ausgeht.

        Wenn dein Problem ist, dass du die Datei auf dem Server geändert hast, und der neue Stand nicht beim Client ankommt, dann musst du deine Serverkonfiguration überprüfen und das Zwischenspeichern nicht erlauben.

        Es kann aber auch sein, dass mit der Auslieferung alles soweit klappt, aber sich die beiden Scripte gegenseitig in die Quere kommen. Die Konsole der im Browser eingebauten Entwicklertools kann helfen, Fehlermeldungen zu erkennen.

        dedlfix.

        1. Hallo,

          Im Netzwerk-Log steht bei der Datei script2.js: 403 not modified

          Was bedeutet das? Ist es eine Erklärung für das Problem?

          304 ist Not Modified, 403 wäre Forbidden.

          Aber es wäre eine Erklärung für das Phänomen, oder? Wenn wirklich 403 gesendet wird, aber eigentlich 304 gemeint war, ist der Server fehlkonfiguriert und es ist klar warum das Script nicht geladen wird.

          Gruß
          Kalk

          1. Hi,

            Im Netzwerk-Log steht bei der Datei script2.js: 403 not modified

            Was bedeutet das? Ist es eine Erklärung für das Problem?

            304 ist Not Modified, 403 wäre Forbidden.

            Aber es wäre eine Erklärung für das Phänomen, oder?

            nicht wirklich: Es ist durchaus vorstellbar, dass dem Fragesteller hier einfach ein Zahlendreher beim Abschreiben passiert ist (und mir ist er auch nicht aufgefallen); es ist aber beliebig unwahrscheinlich, dass er den Statuscode richtig abgeschrieben, dafür aber einen ganz anderen Text dahintergesetzt hat.

            Wenn wirklich 403 gesendet wird, aber eigentlich 304 gemeint war, ist der Server fehlkonfiguriert und es ist klar warum das Script nicht geladen wird.

            Ja. Aber dann stünde da im Textfeld der HTTP-Meldung nicht "Not modified".

            So long,
             Martin

            1. Sorry, war ein Tippfehler. Es steht 304 da. Wenn ich aber die beiden Zeilen vertausche:

              <script src="script2.js"></script>
              <script src="script1.js"></script>
              

              Dann steht bei Script 2 im Log 200 OK, aber beim Script 1 304 not modified

              1. Tach!

                Wenn ich aber die beiden Zeilen vertausche: Dann steht bei Script 2 im Log 200 OK, aber beim Script 1 304 not modified

                Ich kann mich nur wiederholen, unterbinde dass der Server dem Browser das Cachen erlaubt. Dann kommt der Browser auch nicht auf den Gedanken If-Modified-Since mitzuschicken und der Server hat keinen Grund mehr, mit 304 Not Modified zu antworten.

                dedlfix.

              2. Hallo,

                Dann steht bei Script 2 im Log 200 OK, aber beim Script 1 304 not modified

                versuch mal deine Scripte so einzubinden um zu schauen ob es am Cache liegt

                <script src="script2.js?v=1443013882"></script>
                <script src="script1.js?v=1443013882"></script>
                
                1. Hallo,

                  ob es am Cash liegt

                  genau, er hat bestimmt zu wenig gezahlt...

                  Gruß
                  Kalk

                  1. Hallo,

                    genau, er hat bestimmt zu wenig gezahlt...

                    blöde Autokorrektur :/ Hab es verbessert.

      3. Aloha ;)

        Im Netzwerk-Log steht bei der Datei script2.js: 403 not modified

        Was bedeutet das? Ist es eine Erklärung für das Problem?

        Darf ich mal ins Blaue raten? Gehostet bei One.com?

        -> Falls nein: Vielleicht ist trotzdem Varnish verantwortlich, siehe 2. Punkt von "Falls ja"...

        -> Falls ja: Ich bin ja sehr zufrieden mit One, aber sie haben ein paar kleine Eigenheiten, mit denen man zuerst mal umgehen lernen muss (und auf die so offensichtlich auch niemand hinweist, zweiteres habe ich auf Supportanfrage mitbekommen).

        • Subdomains (echte HTTP-Subdomains auf dem Webspace, also das außerhalb des "Web-DNS") werden von one automatisch und ausschließlich angelegt für jeden Ordner innerhalb des Webroot (man kann aber mit ein bissl htaccess-Trickserei den eigenen www-Webroot auf ein Unterverzeichnis biegen und verliert damit dann keine Funktionalität)
        • One setzt für statische Dateien einen vcache ein, die Serverlast und Zugriffszeiten optimieren soll - d.h. Änderungen an statischen Dateien werden nicht direkt sichtbar, sondern erst nach ~ 20 Minuten - was im Normalbetrieb gar nicht so schlecht ist, beim Ändern aber super-nervig. Meine Supportanfrage hat aber ergeben, dass man das Ding unproblematisch deaktivieren kann. - Und wenn man weiß, dass das "Varnish cache" heißt, findet mans auch im FAQ.
        • Vielleicht lohnt es sich, die PHP-Fehlermeldungen zu aktivieren

        Bin trotz diesen "Eigenheiten" wie gesagt sehr zufrieden bei one, die Erreichbarkeit ist (für mich) vollkommen ausreichend - kein hohes Useraufkommen bei mir und bisher in zwei Jahren keine merkliche Ausfallzeit. Da ist mir der Preis die ein oder andere Trickserei echt wert ;)

        Grüße,

        RIDER

        --
        Camping_RIDER a.k.a. Riders Flame a.k.a. Janosch Zoller Erreichbar manchmal im Self-TS (ts.selfhtml.org) oder sonst - wenn online - auf dem eigenen TeamSpeak-Server (fritz.campingrider.de) oder unter: # Facebook # Twitter # Steam # YouTube # Self-Wiki # ch:? rl:| br:> n4:? ie:% mo:| va:) js:) de:> zu:) fl:( ss:| ls:[