jQuery werkt op de ene server wel, op de andere servers niet???
Ik heb jsTree gebruikt icm. PHP/MySQL. De tree wordt nl. gevuld vanuit dB.
Dit werkt goed op mijn eigen ontwikkel omgeving (VDI/Localhost).
Vervolgens heb ik dit over gezet op een ontwikkel server. Daar werkt het ook!
Vervolgens met een release script is alles 1:1 over gezet naar de test en de acceptatie server. Op beide omgevingen werkt het niet!!!????? Er komt een rond draaiend 'wieltje', het blijft hangen. Geen PHP error.
Waar kan dit nu aan liggen?
Ik begrijp jQuery draait in de browser van de cliënt. Dus op zich heeft het niet echt iets met de server te maken, hoewel de tree via PHP/MySQL(- json_encode) gevuld wordt.
Het is ook dezelfde browser waar ik de ontwikkel server en de test/acceptatie server mee benader, dus het kan denk ik niet aan de browser (instelling) liggen.
Kan het met coachen van de server te maken hebben? Ik bedoel ik heb de applicatie uitgebreid met jsTree en met jQuery 2.1.13
Andere delen van de applicatie wordt jQuery 1.7.1 gebruikt. Volgens mij zijn de servers na de release niet gereboot.
Ik krijg ook geen errors met fout opsporing/console van de browser (F12). Ik bedoel de paden ed. kloppen.
Heeft iemand een idee waar dit aan zou kunnen liggen? Of waar je nu verder moet gaan zoeken?
De servers worden op de 3e dinsdag van de maand gereboot, dan weet ik of caching het probleem evt. De oorzaak is.
Nico
Dan lijkt het dat er geen 200 OK header gegeven is, en dat het script toch ergens fout loopt.
Kijk eens naar het Networktab bij je Developertools van je browser. Dan kan je precies zien wat het script ontzichtbaar teruggeeft aan inhoud. Grote kans dat dit een error 500 is. Test het script anders eens droog uit via enkel de URL aan te roepen.
Als je wilt weten of caching de oorzaak is. Haal de cache eens leeg als je live gaat.
Mij is het wel eens overkomen dat ik een cache per ongeluk van test naar productie heb gebracht, en voila. De site down en een error-log vol met onbestaande paden, totdat ik de cache gepurged had. ;-)
Gewijzigd op 02/07/2017 23:26:42 door - Ariën -
Eens op Ctrl-F5 drukken om de boel te herladen kan ook helpen, of je vangt dit af door een versie te bumpen in de verwijzing naar de JavaScript-bestanden zodat deze automatisch herladen worden. Je wilt je eigenlijk niet elke keer afvragen wat de reden is dat een wijziging in JavaScript niet geëffectueerd lijkt terwijl je, zoals je zelf zegt, alles 1:1 hebt overgezet.
Ik heb het voorbeeld overgenomen van phpflow.com en aangepast. Om het aan de 'praat' te krijgen en om te kijken of ik het kon gebruiken had ik rechtstreeks connectie gemaakt met de dB op de localhost. Vervolgens door gegaan... en vergeten dit eruit te halen/ aan te passen.
Nu zit ik sinds kort bij deze klant maar ik hoor nu dat op ONT het password wel hetzelfde is als op mijn localhost maar het verschilt met de andere omgevingen. Dit wist ik dus nu!
Opgelost dus.