Php: include (, require oder readfile) Globalisieren

DevEye

Erfahrenes Mitglied
Ich habe Bilddateien auf verschiedenen Accounts und habe ein Gallerysystem programmiert, welches ständig neu aktualisiert wird und mit neuen Funktionen gefüült wird. Nun muß ich jedes mal diese Datei auf jeden Account (14) einzeln Uploaden.

Nun war meine Idee, dass ich einfach das Script irgendwo plaziere und mit den Include (recquire, readfile...) Befehl arbeite, sodass ich viel Zeit spare. Jedoch ist der Pfad eines include_dir vorgegeben vom Server und kann nicht auf einen anderen Server übertragen werden.

Nun zu meiner Frage:
Gibt es irgend eine Methode um diese Datei zu Globalisieren und für alle Account verfügbar zu machen!
Oder gibtr es eine andere Methode um das Problem zu lösen!


MfG DevEye
----------------
http://www.DevEye.com
 
Hallo!

Du kannst doch beim include-Befehl auch ein ganzes Verzeichnis angeben. Das sollte doch klappen, oder?

Also z.B. so:
PHP:
include ("../../../inc_php/inc_functions.php");
Nehmen wir an, dass Deine Include-Datei sich in diesem Verzeichnis befindet:
includes/php/inc_functions.php

Dein Skript, welches die Datei einbinden will, ist hier:
skripte/php/index.php

Dann sollte dieser Include-Befehl hier die Datei einbinden können:
PHP:
include("../../includes/php/inc_functions.php");
Du gehst dabei zwei Verzeichnisse höher und anschließend wieder alle Verzeichnisse bis zur Include-Datei nach unten.

Hoffe das konnte Dir helfen. :)
 
So leicht ist das Problem nicht zu lösen, den es geht nicht darum, dass die Dateien in Verschiedenen verzeichnissen liegen sondern darum, dass sie auf 2 verschiedenen Servern (Accounts) liegen...
 
Dann geht das mit include schonmal überhaupt nicht,
da include nur auf den Server zugreifen kann auf dem
der Script liegt.

Du kannst höchstens die Scripte so gestalten das der
Output von einer Art Master/Container Script weiter verarbeitet
werden kann. Also das die Scripte HTML ausgeben und du
das dann im Hauptscript einliest und mit ausgibst,
Variablen kannst du darüber natürlich nicht mitgeben.

Mach den Output der Scripte am besten als XML
und lade das dann in deiner Seite und parse es.

Nils
 
Noch mal für Dummies! Ich habe jetzt auf jeden server 3 Dateien
1.Erstellen einer Gallery
2.Anzeigen eines Bildes der Gallery
3.Kommentar zu Bild schreiben

alle haben den selben inhalt!
wie schaffe ich es jetzt jeweils nur eine datei zu verwenden
(bitte mit beispiel)


Danke im voraus!
:rolleyes:
 
Dann geht das mit include schonmal überhaupt nicht,
da include nur auf den Server zugreifen kann auf dem
der Script liegt.

Das stimmt so nicht. Man kann auch Remote-Dateien includen, es sei denn der PHP-Interpreter arbeitet unter Windows und hat eine Version kleiner 4.3. Ansonsten sollte es möglich sein, wenn "allow_url_fopen" aktiviert ist.

Also funktioniert es, die wichtigsten Files der Gallery auf einen Server zu packen und diese von den anderen Servern aus zu includieren. Allerdings ist das bei jedem Script-Aufruf recht unperformant.

Besser würde ich finden, wenn man eine Art Syncronisierungs-Script schreibt, das einmal am Tag prüft, ob auf dem Master-Server eine neue Version des Gallery-Scriptes liegt und bei Bedarf ein Abgleich mit den restlichen Servern erfolgt.

mfg, snuu
 
Nee, das finde ich zu umständlich jeden Tag werden dann 3 Dateien neu auf 14 Accounts geladen und wenn ich es öfters täglich mache? Nein, aber wie geht das mit dem "allow_url_fopen" und dem includen.. Also wäre nett! DevEye
 
Nee, das finde ich zu umständlich jeden Tag werden dann 3 Dateien neu auf 14 Accounts geladen und wenn ich es öfters täglich mache? Nein, aber wie geht das mit dem "allow_url_fopen" und dem includen.. Also wäre nett! DevEye
Haha .. es ist wohl eleganter EINMAL am Tag 3 Dateien auf 14 Servern zu aktualisieren, als bei JEDEM Scriptaufruf 3 Dateien!

Dir ist schon bewusst, dass dann die Ausführung Deines Scriptes immer über 2 Server läuft und von beiden auch abhängig ist. Des Weiteren wird bei jedem Galerie-Aufruf auf den Slave-Servern zusätzlicher Traffic auf dem Master-Server erzeugt (und unnützer Traffic auf dem Slave-Server). Das Transfervolumen wird sich zwar in Grenzen halten, da immer nur die Inhalte der Include-Dateien übertragen werden, dennoch ist die Syncronisations-Variante um einiges performanter!

Verätst Du mir auch, warum sich der Quellcode Deines Galleryscriptes jeden Tag ändert?

// EDIT:
Ich war gerade auf Deiner Homepage. Bei Dir scheint der Hinweis auf Performance vergebens zu sein. Deine Thumbnails haben eine Größe von 179 kB! Da kommt's auf die paar Sekunden beim Includen der Scripte vom Master-Server auch nicht mehr an.

snuu
 
Zuletzt bearbeitet:
Eigentlich sind sie nicht Grösser als 3KB bei den neuen Events und ich füge momentan (also nach den abi prüfungen) immer neue ideen hinzu.. ja ich sollte alles auf einmal machen, aber ich mach das nur so nebenbei...die Page!

gibt es nicht eine methode wie ich einfach sofort wenn ich etwas geändert habe aktualisiere?
 
Zurück