Drupal 8: Module und Themen lassen sich nicht installieren

am 04.09.2019 - 11:11 Uhr in
Wenn ich unter Erweitern "neues Modul installieren" oder unter Design "Neues hema" auswähle und eine auf dem PC vorliegende Datei im tar.gz-Format auswähle (frisch von drupal.org heruntergeladen) wird nach kurzer Zeit die Meldung angezeigt: "Seite nicht gefunden"
Idee, wie das zu beheben ist?
- Anmelden oder Registrieren um Kommentare zu schreiben
Das geht nicht
am 09.09.2019 - 22:06 Uhr
Das geht nicht so.
Installiere die Module über Composer per Kommandozeile.
composer require drupal/deinwunschmodul
Guck mal da, so sollte man das machen:
https://www.drupal.org/docs/develop/using-composer/using-composer-to-ins...
Müsste aber gehen
am 11.09.2019 - 05:01 Uhr
Auch ich würde es inzwischen nur über den composer installieren. Der beschriebene Weg sollte aber auch funktionieren. Versuche mal, den Link direkt von der Drupal.org Site zu kopieren und dann zu installieren. Das sollte funktionieren. Vom Rechner habe ich es selbst noch nicht gemacht. Vielleicht könntest Du mal ein paar Screenshots machen von den Schritten, die Du machst. Das würde ggf. bei der Fehleranalyse helfen. Aber wie gesagt, es lohnt sich auf jeden Fall, mit composer zu beschäftigen.
Gruß
Gerald.
Composer
am 11.09.2019 - 10:42 Uhr
Danke für den Hinweis, composer kannte ich noch nicht. Probiere ich aus:-) Mittlerweile habe ich es nach einer Neuinstallation hinbekommen, über die Admin-Oberfläche Module und Themen installieren zu können. Leider ist es mir nicht gelungen, herauszufinden, was bei den ersten Versuchen falsch gelaufen ist.
Composer et.al.
am 11.10.2019 - 18:47 Uhr
Danke nochmals für die Hinweise. Ich bin dann jetzt auf Composer und Drush umgestiegen und nach einigen Tutorials scheint auch alles zu klappen.
Ich kann in der Entwicklungsinstallation eine Drupalseite mit Composer aufbauen, gewünschte Module einrichten und mit drush aktivieren.
Jetzt habe ich 3 Fragen:
1. Composer legt Drupal-Dateien in einem Verzeichnis "web" ab und z.B die vendor-Dateien auf einer anderen Ebene etc. Wenn ich alle Ordner/ Dateien in der gegebenen Composer-Struktur in die Produktionsumgebung kopiere und das Image der Entwicklungs-DB in die Produktions-DB importiere, dann kann ich unter domain/XXX/web/index.php die erstellte Drupal-Installation problemlos aufrufen. Wenn ich aber nur die Dateien aus dem Ordner "web" (DB läuft) in die Produktionsumgebung kopiere, kann ich keine Seite aufrufen. Welche Dateien/Ordner (minimal) muss ich in welcher Form nun von Entwicklung nach Produktion kopieren, damit ich dort eine Seite aufrufen kann?
2. Wenn ich jetzt einige updates in der Entwicklungsumgebung eingespielt habe und die entsprechende Entwicklungs-DB in die Produktions-DB kopiere, dann werden alle Änderungen (Beiträge, angemeldete user etc.) überschrieben/gelöscht. Wie schafft man es, dass diese Einträge erhalten bleiben?
3. Ich setze NGINXein, und habe eine Konfiguration eingerichtet, die nicht mit der Installation von Drupal in einem Unterordner funktioniert. Gibt es ein Muster zu einer optimalen NGINX-Konfiguration für diesen Drupal-Fall?
Wichtig zu wissen ist, dass
am 11.10.2019 - 20:26 Uhr
Wichtig zu wissen ist, dass Drupal in Version 8 fast alle Konponenten im ordner vendor deiens Projekts speichert. Im Ordner web liegen nur noch die sogenannten Scaffhold files, also die Dateien, die der Webbrowser auslesen muss. Alles andere liegt ein eben höher und dann eben im Ordner Vendor.
Du kopierst also gar nix irgendwo hin.
Dui isntallierst eine Drupal Distribution oder den Drupal core und setzt den Doc-Root auf das Verzeichnis /var/www/drupal/web Z. B.
Von Nginx würde ich abraten. Es gibt keine optimale Nginx-Konfiguration, weil jedes Modul andere anforderungen an Speicherlimits und Cacheing hat Drupal 8 arbeitet nach wie vor perfekt auf Apache2 Wenn du Nginx also dringend benötigst, weil du beispielsweise eine Fertige Mail-Server-Lösung installiert hast, die nginx von anfang an mitbringt, dann installiere nebendran Apache, ändere den Prot für Apache und nutze nginx als proxy dafür. Das klingt zwar aufwendig, ist aber um vieles Einfacher, als nach jeder Modulinstallation die Nginx-Konfiguration anzupassen und durch die direktiven von nginx zu gehen, Das ist wirklich was für nativespeaker oder Entwickler, die nginx wie ihre Hosentache kennen. Alle anderen sollten die Nginx Als Proy für Apache 2 Lösung verwenden
Live- und Testumgebung
am 12.10.2019 - 08:31 Uhr
Danke für die Erklärung! Ich lasse nun Drupal über Apache laufen und setze NGINX nur als Proxy ein - das funktioniert jetzt. Eingerichtet habe ich nun 2 Drupal-Installationen eine Live-Installation im Hauptverzeichnis und eine Testinstallation in einer Subdomain. In der Testinstallation läuft auch Drush und Composer. Läuft hier bei Tests alles glatt (neues Modul, neuer View, neue Slideshow etc.) möchte ich die Änderungen eins zu eins in die Hauptdomain übertragen. Wenn ich nun das Image der Test-DB in die Live-DB übertrage, überschreibe ich alles, was sich bis zu diesem Zeitpunkt in der Live-DB geändert hat, z.B. die Anmeldedaten neuer User, neue Beiträge etc. Wie läßt sich das vermeiden? Gibt es eine Möglichkeit, die relevanten Tabellen in der Live-DB vorm Überschreiben zu schützen o.ä. Oder wie machen das die Profis?
Natürlich lässt sich das
am 12.10.2019 - 11:14 Uhr
Natürlich lässt sich das vermeiden. Ich würde dir empfehlen dich mit drush zu beschäftigen und die Dokumentation auf Github zu lesen oder Greg direkt auf druaplchat.eu bzw. Stackechange zu kontaktieren, damit er dir als Co-Maintainer von Drush vielleicht direkt ein paar fragen beantwort´, die über die vorhandenen Beispielie hinausgehen.
Composer und Drush
am 31.10.2019 - 13:11 Uhr
Vielen Dank für Eure Hilfe. Ich habe jetzt den ganzen workflow auf Composer und Drush umgestellt. Das schien offensichtlich die einzige Möglichkeit zu sein, zu einer stabilen Installation zu gelangen. Composer nutze ich nun zum installieren und update von Modulen und Drush zum en/disablen und db-update.
Jetzt habe ich eine weitere Frage. Ich habe jauch einige Libraries installiert z.B. die jquerry für views-slideshow.
Ist es sinnvoll oder sogar notwendig, diese in das composer.json File einzubinden?
Zitat: Ist es sinnvoll oder
am 31.10.2019 - 15:21 Uhr
Ist es sinnvoll oder sogar notwendig, diese in das composer.json File einzubinden?
Natürlich ist es sinnvoll und notwendig. Man muss nur extrem aufpassen beim Editieren von composer.json :)
Libraries bei composer.json eintragen
am 31.10.2019 - 20:31 Uhr
Ich habe so etwas noch nicht gemacht. Kannst Du mir ein Beispiel geben, wie man eine Library in der composer.json einträgt?
Hi Kulturmensch, Ich hab das
am 05.11.2019 - 15:33 Uhr
Hi Kulturmensch,
Ich hab das hier gefunden: https://drupal.stackexchange.com/questions/269964/how-to-use-composer-to-install-third-party-libraries/#answer-269972
Wie gesagt, extrem aufpassen beim Editieren von composer.json. Das Problem da ist, daß man die die Datei editieren muss jedes mal wenn es eine neue Version der Library gibt. Im Libraries Verzeichnis müsste man die sowieso per Hand aktualisieren, also es ist mehr oder weniger dasselbe.
Gruß
Guck mal hier
am 06.11.2019 - 13:57 Uhr
https://www.drupal.org/project/photoswipe
Unter "Alternative composer installation"