Probleme mit Installation voa COMPOSER
am 11.05.2022 - 17:08 Uhr in
Einen Wunderschönen!
Ich habe ein kleines Problem: Die Installation von Drupal 9.3.13 mittels Composer gelingt nicht.
Nach einem Anruf beim Provider bekam ich folgende Antwort:
Composer ist standardmäßig auf unseren Shared Webhosting-Servern vorinstalliert und kann für Ihr Vorhaben genutzt werden. Wie exakt es zu nutzen ist, obliegt Ihnen. Da können wir nicht helfen.
Die Seite, ich ich übernommen hatte, sicherte ich daraufhin und machte sie platt. Die Verbindung zum Server via Putty war auch kein Problem.
Ich legte los mit
composer create-project drupal/recommended-project my_site_name_dir
Ergebnis
Creating a "drupal/recommended-project" project at "./composer create-project drupal/recommended-project my_site_name_dir"
Info from https://repo.packagist.org: #StandWithUkraine
Installing drupal/recommended-project (9.3.13)
- Installing drupal/recommended-project (9.3.13): Extracting archive
Created project in /home/www/composer create-project drupal/recommended-project my_site_name_dir
Installing dependencies from lock file (including require-dev)
Verifying lock file contents can be installed on current platform.
Your lock file does not contain a compatible set of packages. Please run composer update.
Problem 1
- doctrine/annotations is locked to version 1.13.2 and an update of this package was not requested.
- doctrine/annotations 1.13.2 requires php ^7.1 || ^8.0 -> your php version (7.0.27) does not satisfy that requirement.
Problem 2
- doctrine/lexer is locked to version 1.2.1 and an update of this package was not requested.
- doctrine/lexer 1.2.1 requires php ^7.2 || ^8.0 -> your php version (7.0.27) does not satisfy that requirement.
Es gab isg. 45 Probleme, nur composer.lock, und composer.json wurden geschrieben. Dann hatte ich irgendwo gelesen, man müsse die genaue Verrsion von Drupal angeben, aber auch der Versuch mit
composer create-project drupal/recommended-project:9.3.13 my_site_name_dir
brachte das gleich Ergebnis.
Nach weiterem Suchen stieß ich auf:
composer create-project drupal/recommended-project:9.3.13 msr-hamm.de <strong>--ignore-platform-reqs</strong>
Das Ergebnis
Creating a "drupal/recommended-project:9.3.13" project at "./my_site_name_dir"
Info from https://repo.packagist.org: #StandWithUkraine
Installing drupal/recommended-project (9.3.13)
- Installing drupal/recommended-project (9.3.13): Extracting archive
Created project in /home/www/my_site_name_dir
Installing dependencies from lock file (including require-dev)
Verifying lock file contents can be installed on current platform.
Package operations: 62 installs, 0 updates, 0 removals
- Installing composer/installers (v1.12.0): Extracting archive
bis
- Installing drupal/core (9.3.13): Extracting archive
- Installing drupal/core-recommended (9.3.13)
Package doctrine/reflection is abandoned, you should avoid using it. Use roave/better-reflection instead.
Generating autoload files
41 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
PHP Parse error: syntax error, unexpected '=' in /home/www/my_site_name_dir/vendor/drupal/core-composer-scaffold/Interpolator.php on line 151
Parse error: syntax error, unexpected '=' in /home/www/my_site_name_dir/vendor/drupal/core-composer-scaffold/Interpolator.php on line 151
Allerdings wirft mir der Browser, wenn ich auf die Seite gehe, immer nur Forbidden aus.
Im Ordner der Seite sind die Verzeichnisse web und verndor und die zwei Composer-Dateien zu sehen.
Was mache ich falsch?
Anhang | Größe |
---|---|
Verzeichnis.PNG | 2.81 KB |
- Anmelden oder Registrieren um Kommentare zu schreiben
Bis dahin ist alles ok. Du
am 11.05.2022 - 17:17 Uhr
Bis dahin ist alles ok. Du mußt aber jetzt das DocumentRoot für Deine Installation auf das web-Verzeichnis in Deinem Installations-Verzeichnis setzen. Das geht meist über das Admin-Interface Deines Providers. Im Zweifel den Support fragen, wie das gehen soll.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Hallo Walter, ich habe hier
am 12.05.2022 - 14:32 Uhr
Hallo Walter,
ich habe hier eine Anschlussfrage. Nach langem Suchen bin ich auf darauf gekommen, dass ich auf das web-Verzeichnis zeigen muss. Das habe ich gemacht. Die Seite ist nun unter www.domain.de und auch unter www.domain.de/web erreichbar. Das ist das eine, das mit komisch vorkommt. Außerdem funktionieren die Links nicht, da in der URL immer noch ein /web dazwischen steht. Beim "Anmelden" bspw. www.domain.de/web/user/login. Richtig wäre www.domain.de//user/login.
Weißt du vielleicht, an was das liegen könnte?
Hast Du drush schon
am 12.05.2022 - 15:14 Uhr
Hast Du drush schon installiert? Wenn nicht, dann mit composer require drush/drush installieren (dort ausführen wo composer.json und composer.lock sich befinden).
Danach vendor/bin/drush cr aufrufen. Dadurch werden alle Links, die auf Installationsverzeichnissen beruhen, neu (und dann hoffentlich richtig) aufgebaut.
Das die Seite sowohl mit und ohne www davor aufgerufen werden kann ist normal. Mit www ist meist nur ein Alias und keine echte Subdomain. Das kann in der DNS-Konfiguration geändert werden.
Zur Erklärung meiner letzten Antwort: das DocumentRoot ist die Stelle, an der der Apache-Webserver eine Indexdatei sucht (index.php oder index.html). Mit der composer Installation seit Drupal 8 ist das das "web" Verzeichnis.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Hallo, vielen vielen
am 12.05.2022 - 16:20 Uhr
Hallo,
vielen vielen Dank!!!
Ich hatte Drush noch nicht installiert. Habe deine Anweisung genau befolgt und es hat tatsächlich funktioniert.
Da hätte ich noch lange suchen können. Wahnsinn und Gottseidank, dass es solche Experten wie dich gibt.
Nur damit ich das beim nächsten Mal vielleicht besser hinbekomme: Hast du eine Idee, woher das Problem kam?
Ich habe bisher alles nach deiner Anleitung gemacht: https://www.drupalcenter.de/node/61509
Das liegt am Caching von
am 12.05.2022 - 17:34 Uhr
Das liegt am Caching von Drupal. Um die Seiten schneller aufzubauen werden alle möglichen Informationen im Cache abgelegt. Du hast vermutlich die Seite mittels [domainname]/web einmal aufgerufen. Das hat für Drupal gereicht um daraus die Pfade für die Menüs zu erstellen und zu speichern. Wenn sich jetzt aber der Einstiegspunkt ändert gelten die alten Pfade nicht mehr. Mittels vendor/bin/drush cr weist Du Drupal an, alle Caches neu aufzubauen und damit auch die Pfade neu zu bestimmen. Der Vorteil von drush liegt darin, daß das nicht über den Browser muß. Der geht nämlich bei solchen Fehlern meist nicht mehr.
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Alles klar, vielen herzlichen
am 13.05.2022 - 07:07 Uhr
Alles klar, vielen herzlichen Dank!
Cache vs Browser
am 17.05.2022 - 16:01 Uhr
kleine Ergänzung: als Erbauer der Seite d.h. eingelogt hat man im Verwaltungsmenü schon das Cache-Clear Kommando, aber drush ist idR tatsächlich komfortabler ..
https://amazonas-box.de
https://muenchen.social/@Franz
Nur als Tipp: für einfache
am 03.06.2022 - 04:23 Uhr
Nur als Tipp: für einfache Webseiten kann ma besser WP nutzen. Drupal ist viel zu kompliziert.
C.A.W. Webdesign
einfach
am 03.06.2022 - 18:34 Uhr
Wenn schon: für 'einfache' Webseiten benutzt man Webseitenbaukästen wie Jimdo und ähnliche ..
Wenn man allerdings wie der Ursprungsposter die Kommandozeile "erreicht" hat und eine neue Seite ohne Migrationen u. ähnlich "alten Ballast" baut, sind mit drush und composer die meisten Sachen unschlagbar komfortabel, meine ich
https://amazonas-box.de
https://muenchen.social/@Franz