[gelöst] Einstellungen/Probleme mit File Manager 7.4-Installation auf den Hoster-Server
am 06.07.2011 - 09:10 Uhr in
Ich hatte ursprünglich angenommen, daß dieses Problem nach dem Kopieren auftrat. Nachdem ich jetzt noch einmal neu installiert habe, muß ich mich korrigieren. Mehr im nächsten Eintrag.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Hallo,
nachdem man mir hier im Forum nun doch den Frust bezüglich Version 7 genommen hatte, habe ich mich entschieden 7.4 neu zu installieren. Ich habe das zunächst in einer lokalen Installation gemacht und wollte die dann auf einfache Art und Weise auf den Hoster-Server bringen. Es giebt dazu ja hier im Forum einen Thread mit der Meinung, daß man das machen kann. Ich habe dazu beim Hoster zunächst eine Neuinstallation durchgeführt. Danach habe ich meine Daten aus der lokalen DB importiert und einige Dateien bzw. Verzeichnisse wie z.B. sites/all/default/files übertragen. Im Großen und Ganzen funktioniert das auch. Ich habe aber Probleme mit Images. Mein Hoster hatte mir für 7.2 einen Patch mit file.inc wegen dem SAVE_MODE implementiert. Der war in 7.4 nicht enthalten. Ich habe diese Änderung dann selbst nachgezogen und kann auch Fotos hochladen, nur leider nicht anzeigen. Die Fotos stehen danach im files-Verzeichnis. Allerdings sieht der Inhalt der DB-Tabelle file_managed komisch aus. Früher wurden die Fotos dort mit public://image.gif in die Spalte URI eingetragen. Jetzt steht dort der absolute Pfad auf den Server. In den aktuellen Protokollnachrichten sieht man,daß anscheinend ein Standort zusammengesetzt aus meinem Domain-Namen und diesem absoluten Pfad verwendet wird. Das ist natürlich falsch. Habe ich mir da beim Kopieren etwas zerschossen? Nach dieser Neuinstallation hatte ich natürlich noch keine Fotos hochgeladen. Aber sowohl in dem SQL-Dump, den ich vor der Neuinstallation gesichert hatte als auch auf meinem lokalen System steht in file_managed die Syntax public://image.gif.
Nach dem Hochladen von Fotos in meinen Inhaltselementen wird mir nur ein kleines Standard-Icon und der File-Name angezeigt. Im Frontend erscheint das Foto natürlich auch nicht.
Vielleicht wäre das eher eine Frage für meinen Hoster. Ich würde aber schon gerne verstehen, woran es liegt. Vielleicht erbarmt sich einer der Gurus.
- Anmelden oder Registrieren um Kommentare zu schreiben
Hast du auf deinem
am 06.07.2011 - 13:23 Uhr
Hast du auf deinem Hosting-Paket denn die nötigen Vorraussetzungen für eine Drupal 7 Installation. Einen safe-mode Patch einzuspielen halte ich für wenig sinnvoll - hier sollte der Hoster schon aus Sicherheitsgründen diese Einstellung komplett deaktivieren, so wie dies mittlerweile eigentlich Standard bei den Anbietern sein sollte..
Die nötigen Systemvoraussetzungen für Drupal findest du auf der folgenden Seite:
http://drupal.org/requirements
Vlt. solltest du mit deinem Hoster erstmal diese Liste "durchgehen" ..
Wo liegen denn die Seiten ?
SteffenR
http://www.twitter.com/_steffenr
Drupal-Initiative e.V.
Hallo, wie oben schon
am 06.07.2011 - 15:13 Uhr
Hallo,
wie oben schon erwähnt, habe ich jetzt 7.4 beim Hoster neu installiert. Jetzt steht in der DB-Tabelle file_managed für dieses Foto als URI immer noch der volle Pfad bis zu .../files/field/image.jpg .
In den aktuellen Protokollnachrichten steht:
"Unable to generate the derived image located at public://styles/large/public/"+absoluter Pfad".
Unter Location wird in den Protokollnachrichten
Domainname+"/sites/default/files/styles/large/public"+absoluter Pfad
angegeben.
Ich habe mich jetzt einmal kurz in file.inc umgesehen. Kann es sein, daß am Anfang der URI "file://" oder "public://" erwartet wird?
Mit dieser Protokollnachricht habe ich jetzt wieder gegoogelt, werde aber nicht so recht schlau daraus. Zumindest eine Lösung scheint es nicht zu geben.
Mein Hoster hatte für 7.2 einige Zeilen in file.inc eingefügt:
// Move uploaded files from PHP's upload_tmp_dir to Drupal's temporary
// directory. This overcomes open_basedir restrictions for future file
// operations.
$file->uri = $file->destination;
+ // isol path
+
+ $file->olduri = $file->uri;
+
+ if (ini_get('safe_mode') == 1) {
+ $wrapper = file_stream_wrapper_get_instance_by_uri($file->destination);
+ $file->uri = $wrapper->realpath();
+ }
if (!move_uploaded_file($_FILES['files']['tmp_name'][$source], $file->uri)) {
Ohne diese Zeilen kann ich aber noch nicht einmal Fotos hochladen.
Hat irgend jemand eine Idee?
Hallo Steffen, wir haben da
am 06.07.2011 - 15:54 Uhr
Hallo Steffen,
wir haben da anscheinend parallel gearbeitet...
Es handelt sich um einen Hoster, der Java und andere Content-Management-Systeme in seiner Preisliste hat.
Ich hatte für 7.2 einen Hinweis gefunden, wonach eventuell nur der safe-mode hätte abgeschaltet werden müßte. Sie wollten das aber nicht machen und haben mir dann diesen Patch implementiert. Da ich nicht nur Drupal mache, würde ich auch gerne dort bleiben. Mein Bekannter, für den ich die Seite mache, hat natürlich nicht diese Abhängigkeiten und kann sich einen anderen Hoster aussuchen.
Die Voraussetzungen sind denke ich schon erfüllt. Wenn ich es jetzt richtig sehe, haben mich bisher Drupal-Probleme ausgetrickts.
Wenn Drupal nicht den Upgrade auf 7.4 empfehlen würde, hätte ich dieses Problem hier nicht.
ABC111 schrieb Die
am 06.07.2011 - 19:00 Uhr
Die Voraussetzungen sind denke ich schon erfüllt.
Eben nicht, wenn sich dein Hoster weigert, den Safe Mode auf OFF zu stellen, sind die System Requirements nicht erfüllt, Herumtricksereien in der file.inc hin oder her. Es spricht übrigens nicht gerade für deinen Hoster, wenn er den Safe Mode unveränderbar auf ON hat. Um es mit den Worten von php.net zu sagen:
"The PHP safe mode is an attempt to solve the shared-server security problem. It is architecturally incorrect to try to solve this problem at the PHP level[...].
Relying on this feature is highly discouraged."
Do it with Drupal.
Ich habe mir die Situation
am 07.07.2011 - 12:47 Uhr
Ich habe mir die Situation noch einmal genauer angesehen.
Es wird unter sites/default/files/styles/thumbnail/public//.../sites/default/files/field/image/image.jpg tatsächlich noch eine Unterstruktur
angelegt, die evtl. den absoluten Pfad nachahmt. Dort wird laut Protokollnachrichten ein Image gesucht und nicht gefunden. Hochgeladen wurde es nach sites/default/files/field/image.jpg.
In meiner 7.2-Installation (auch beim Hoster, d.h. unter den gleichen Bedingungen wurde z.B. eine Struktur sites/default/files/styles/thumbnail/public/field/image angelegt, in die immerhin ein Foto abgelegt wurde. Die meisten Fotos wurden dort nach sites/default/files hochgeladen. Kann die Verwendung der Unterstrukturen auch von der Verwendung eigener Strukturobjekten mit eigenen Feldern abhängen? Im Moment wurde für 7.4 noch kein zusätzliches Strukturobjekt angelegt. Ich versuche nur in einem einfachen Artikel ein Foto anzuzeigen.
Sind das zwei Probleme? Zum einen wird anstelle von field/image/image.jpg der absolute Pfad für die Suche verwendet. Und zum zweiten ist man sich beim Schreiben und Lesen eventuell nicht einig, ob nach files/field oder fiels/style geschrieben wird?
ABC111 schrieb...wollte die
am 07.07.2011 - 14:02 Uhr
...
wollte die dann auf einfache Art und Weise auf den Hoster-Server bringen. Es giebt dazu ja hier im Forum einen Thread mit der Meinung, daß man das machen kann. Ich habe dazu beim Hoster zunächst eine Neuinstallation durchgeführt. Danach habe ich meine Daten aus der lokalen DB importiert und einige Dateien bzw. Verzeichnisse wie z.B. sites/all/default/files übertragen. Im Großen und Ganzen funktioniert das auch. Ich habe aber Probleme mit Images..
Hi,
wenn ich es auf die Art mache lösche ich VOR dem Import meiner (einer) Datenbank in die
frische Online - Installation alle Inhalte der Online - Datenbank.
Dann importiere ich meine Datenbank in diese nun leere Datenbank.
Parallel kopiere ich meine Dateien einer betreffenden
Druapl Installation noch in die frische Online Installation.
Klappt wunderbar - oder so "Fehler"meldungen wie "konnte temporäre Datei nicht speichern" ..
wenn ich vergessen habe, den temporären Ordner im OnlineInstallations ding noch anzulegen.
Vielleicht daher bei dir, weil das noch von den Inhalten der "alten" Datenbank stammt mit
den Pfadangaben? Oder Angaben für Pfade der Installation nachsehen. Meistens als erstes nach dem kopieren auf einen Server mache ich einen "Cron".
Ich habe, hatte bisweilen "doofe" Sachen, wenn ich eben vorher nicht die Zieldatenbank gecleant habe.
Oder ich habe zwei Seiten in einer Datenbank, dann bin ich ueber "Präfix für Tabellen" rangegangen.
Hallo, ich habe weiter oben
am 07.07.2011 - 14:28 Uhr
Hallo,
ich habe weiter oben erwähnt, daß dieses Problem auch bei einer Neuinstallation auftritt. Dafür wurden natürlich alle Drupal-Tabellen in der Datenbank gelöscht. Das alte Verzeichnis wurde umbenannt und ein neues angelegt. Und in dieses frische Verzeichnis wurden dann die Installationsdaten hochgeladen.
Ich kämpfe im Moment wirklich nur mit einer 7.4-Neuinstallation. Hier auf der Startseite von drupalcenter.de wurde ja eindringlich empfohlen, von 7.2 auf 7.4 hochzugehen. Ich bin aber inzwischen so weit, daß ich wahrscheinlich wieder 7.2 oder sogar 6 installiere.
ABC111 schrieb Dafür wurden
am 07.07.2011 - 16:31 Uhr
Dafür wurden natürlich alle Drupal-Tabellen in der Datenbank gelöscht.
Ja - das stand ja weiter oben nicht. Gutes Gelingen wünsch ich!
Der Safe-Mode wurde nun doch
am 08.07.2011 - 08:47 Uhr
Der Safe-Mode wurde nun doch abgeschaltet und ich kann Fotos hochladen. Aber die kopierten Fotos aus meinem lokalen System wurden nicht angezeigt, obwohl ich den files-Ordner inklusive aller Unterverzeichnisse kopiert habe und natürlich die gesamte DB aktualisiert wurde. Den Cache hatte ich natürlich auch gelöscht.
Ich hatte natürlich gegoogelt und den Eindruck, daß ich schon alles richtig gemacht habe. Der Knackpunkt war aber wahrscheinlich der, daß ich die Neuinstallation noch unter Safe-Mode gemacht hatte.
Ich bin danach so vorgegangen wie in meinem schlauen Drupal7-Buch und habe einfach nur die Verzeichnisstruktir und die Datenbank kopiert - zuvor natürlich alles gelöscht. Danach mußte ich noch settings.php (in meinem Fall auch .htaccess) aus der gesicherten Alt-Installation hochladen. Und jetzt werden auch die Fotos schön angezeigt.
Vielen Dank noch einmal an alle.