PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Fileupload über Url


chatpalace24
05.01.2008, 13:07
Hi zusammen,

irgendwie funktioniert bei mir der Upload eines Files über die Urlfunktion nicht mehr.

Das einzigste was ich noch zu sehen bekomme, wenn ich File über Url hochladen benutze ist :

newattachment.php?do=manageattach&p=

Natürlich mit meine Domain vorweg.
Es sieht so aus, als wenn die postid usw. weg sind. Files per upload also von Platte gehen ohne Probleme.

Schalte ich das Pluginsystem aus, so gehts ohne schwierigkeiten.

url_fopen ist ebenfalls auf on :-)

Sämtliche Hacks die ich einsetze , benutzen nirgends einen der Hooks :
newattachment_start
newattachment_attach
newattachment_complete

Und keine Templateänderung im Bereich Attachement oder sowas.

Ausser das PM_Attachement Addon, aber dieses benutzt ja nur das Formular, und selbst wenn ich das abschalte, geht das nicht. *hoil*

Irgendwer ne Idee ?
Und ja, ich hab auch schonmal die suche genutzt aber nichts gefunden was dem nahe kam.

Schonmal vielen Dank für Eure Mühen

StGaensler
05.01.2008, 13:35
Schalte ich das Pluginsystem aus, so gehts ohne schwierigkeiten.Hallo,

dann deaktiviere bitte einmal nacheinander alle deine Add-Ons und Plug-Ins, dann findest du heraus, welches Plug-In daran schuld ist.

Viele Grüße,
Stefan

chatpalace24
05.01.2008, 13:43
Grins. Das habe ich doch schon gemacht. Hatte ich vergessen zu erwähnen. *g*
Aber irgendwie fluppt das nicht. ich rupf mir hier schon die Haare aus, und seh bald aus wie ne Billardkugel :-)

Gibts keine Möglichkeit, einfach mal alle Produkte auf einmal zu deaktivieren, ohne das Pluginsystem abzuschalten ? Also auch so, das die entsprechenden Plugins ebenfalls deaktiviert werden die dazu gehören ?
*wuah*

ICh dachte erst, das irgendein Prdoukt über TMS veränderungen macht , habe dann einfach mal TMS deaktiviert. Aber auch kein Erfolg.

Also doch das Pferd von hinten aufzäumen habe ich den Eindruck.

chatpalace24
05.01.2008, 16:15
Also was mir nun aufgefallen ist: bei einigen Endungen funktionierts nun bein anderen wiederum nicht.
Dateigrößen sind bei allen gleich. Irgendeine Idee was das sein könnte ? Ich raffs nun echt nicht mehr.

chatpalace24
05.01.2008, 20:39
Habe bisher folgendes rausbekommen :
1.) Es hat nichts mit den Plugins zu tun.
2.) sobald Filegröße 8MB überschreitet, gehts nicht mehr.

Obwohl alles was mit Upload zu tun haben könnte auf 64 MB steht, und sogar die Größe für die Attachements habe ich auf 128 erhöht.

Hülfäää :)

StGaensler
05.01.2008, 20:43
Hallo,

funktioniert denn ein "normaler" Upload von Dateien größer als 8 MB? Wenn das PHP memory_limit zu niedrig ist, dann funktioniert auch kein Upload von großen Dateien. Üblicherweise steht dies auf 16 MB, und das reicht für so große Dateien leider noch nicht aus.

Viele Grüße,
Stefan

chatpalace24
05.01.2008, 22:46
Ja der funktionierte ohne Probleme, das ist ja das was mas mich wunderte.
Habe nun das Memory Limit von vorher 32 MB auf nun 64 MB gesetzt. Aber das ist doch eigenlich mumpitz oder nicht ? Da das File ja nich angefasst wird oder doch?
Das File liegt bei mir auf dem Server in einem Verzeichnis, ich gebe die komplette Url an, und obwohl das File nirgends hinbewegt wird, stößt es ans Memory Limit ?
Das ist IMHO nen Bug oder nicht ?

StGaensler
05.01.2008, 23:14
Hallo,

ob und wo die Datei auf deinem Server liegt, stellt vBulletin nicht fest. Es lädt die Datei trotzdem vom Webserver herunter, muss es dafür zwischenspeichern, und schreibt es dann in die Datenbank/ins Dateisystem. Dafür braucht vBulletin (und somit PHP) Speicher.

Viele Grüße,
Stefan

chatpalace24
06.01.2008, 10:49
Hallo,

ob und wo die Datei auf deinem Server liegt, stellt vBulletin nicht fest. Es lädt die Datei trotzdem vom Webserver herunter, muss es dafür zwischenspeichern, und schreibt es dann in die Datenbank/ins Dateisystem. Dafür braucht vBulletin (und somit PHP) Speicher.

Viele Grüße,
Stefan

Moin Moin und erstmal Danke für deine Antworten und Tips. *wie unhöflich von mir*

Nur mal zum reinen Verständnis , des Handelns von vb.
File liegt in einem Verzeichnis xyz
Ich lade das File hoch und gebe die entsprechende Url an, damit das File eingetragen wird.
vb schaut ob das File wirklich existiert *soweit logisch* und kopiert es ?
Genau da setzt bei mir die Logik aus, wozu kopieren und nicht verlinken ?

Oder evtl. ne Möglichkeit schaffen, zwischen lokal und entfernter Datei zu unterscheiden.
wegen meiner im ACP um dort zu sagen, das man lokale Files nur verlinkt. Sonst hat man ja den ganzen Schmu zweimal, wenns denn kopiert würde.

ARGEL. Das wird ja echt kopiert. Das heißt also, wenn ich ein File per Url hochgeladen habe von meinem Server, hab ich das geraffel 2 mal auf der Platte ? Örgs. Oki, dann kann ich das ja alles wieder löschen und spare platz.

Was dennoch irritiert, ist eben das Problem mit dem Ram.

Mal ein Beispiel :

Das file ist 11 MB groß
Php hat memory Limit 32MB pro ausführung einer Instanz (ist doch so oder ?)
Zeit zum Ausführen bis Abbruch 5 min (ja eiegntlch sollten 30 sek. reichen, passt aber nicht immer)

Jetzt ist hier die Frage, bekommt vb nen Timeout vom Kopieren ?(was eigentlich nicht sein kann da auf lokaler Platte) oder aber ein Bremser weil das Limit für den Speicher überschritten ist. Was bei 11 MB auch nich sein kann.

Beim runterladen von einem entfernten Rechner kann ich das noch verstehen, da es in den Speicher gezogen wird, zumindest Teilweise, aber so ?

*grübel*

StGaensler
06.01.2008, 22:17
Hallo,

wenn du vBulletin eine URL zum Dateiupload gibst, lädt er sie "einfach herunter", es prüft da nicht, ob die Datei bereits auf deinem Server liegt.
Ich würde dir raten, da dann nur einen Link zu der Datei zu setzen, das spart wirklich Speicherplatz :)

Standardmäßig speichert vBulletin die Dateien in die Datenbank. Aber zu irgendeinem Zeitpunkt braucht vBulletin die Datei einmal im Hauptspeicher (in einer Variablen) um sie dann "weitergeben" zu können - egal ob jetzt an die Datenbank, oder in eine neue Datei.

Den hohen Speicherverbrauch kann ich mir leider da auch nicht erklären, darüber habe ich leider auch noch keine Informationen gefunden.
Was genau den Timeout produziert kann man ohne Fehlermeldung leider nicht sagen - meist ist das memory_limit dran schuld. Wenn zu Zugriff auf das error.log von Apache hast wäre das ideal - dort steht das drinnen.

Viele Grüße,
Stefan

chatpalace24
07.01.2008, 17:50
Hi Stefan,

ja ich hab auf die error_log zugriff. Werde mir das mal anschauen.
Also ne Fehlermeldung in vb gibts keine. Die Seite bleibt einfach nur weiß und das wars dann auch.

Danke für die Infos.

Gruß
Oliver