Drupal installieren: Unterschied zwischen den Versionen

Aus Hostsharing Wiki
Zur Navigation springen Zur Suche springen
K (Kategorien)
 
(31 dazwischenliegende Versionen von 8 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Kategorie:HSDoku]]
= Drupal bei HS =
[[Kategorie:Installationsanleitungen]]
Überprüft auf Installation der V 8.6.7.
[[Kategorie:Software]]
 
Aktualisiert auf Basis von drupal 10.3.1 (26.07.2024)
== Vorbereitungen ==
 
In ''hsadmin'', zum Beispiel mit ''hsscript'':
 
''hsadmin''-Shell starten mit:
 
<syntaxhighlight lang="bash">
hsscript -u xyz00 -i
Password: ********
</syntaxhighlight>
 
Dann nacheinander anlegen:
 
* Linux User als Domain-Administrator
* Subdomain ''drupal.hs-example.de''
* MySQL-User
* MySQL Datenbank
 
<syntaxhighlight lang="bash">
xyz00@hsadmin> user.add({set:{name:'xyz00-drupal',password:'geheim',shell:'/bin/bash',comment:'Drupal CMS'}})
xyz00@hsadmin> domain.add({set:{name:'drupal.hs-example.de',user:'xyz00-drupal'}})
xyz00@hsadmin> mysqluser.add({set:{name:'xyz00_drupaluser',password:'geheim'}})
xyz00@hsadmin> mysqldb.add({set:{name:'xyz00_drupaldb',owner:'xyz00_drupaluser'}})
</syntaxhighlight>
 
drupal 10 braucht mindestens php 8.1
Stand Juli 2024 ist die Version auf den Hives php 8.2.21
das kann überprüft werden mit
<syntaxhighlight lang="bash">
$ php -v
</syntaxhighlight>
Falls das nicht aktuell ist bitte die Seite besuchen:
[[PHP|Aktuelle PHP Version nutzen]]
 
== Drupal installieren ==
 
Anmelden als Linux-User ''xyz00-drupal'':
 
<syntaxhighlight lang="bash">
ssh -l xyz00-drupal xyz00.hostsharing.net
</syntaxhighlight>
 
=== Mit Composer ===
Stand Juli 2024 ist die Composer Version auf den Hives perfekt für drupal, das kann geprüft werden mit:
<syntaxhighlight lang="bash">
$ composer --version
oder kurz
$ composer -V
</syntaxhighlight>
 
Die auf den Hives vorhandene Version von Composer kann veraltet sein, daher ist es sinnvoll eine eigene Version zu installieren von: https://getcomposer.org/download/
Siehe auch https://www.drupal.org/docs/develop/using-composer und insbesondere https://www.drupal.org/docs/develop/using-composer/using-composer-to-install-drupal-and-manage-dependencies


Das ist ein Text, kopiert aus der Support Mailingliste:
<syntaxhighlight lang="bash">
cd doms/drupal.hs-example.de/var/
composer create-projekt drupal/recommended-project drupal10
</syntaxhighlight>


1. Tar-Ball laden und auspacken
Nun entsteht in dem Ordner var/drupal10/web die neue Drupal Site.
Diese dann noch in das entsprechende Verzeichnis (z.B.: subs-ssl/www) verlinken:
<syntaxhighlight lang="bash">
rmdir subs-ssl/www
ln -s var/drupal-installationsverzeichnis/web subs-ssl/www
</syntaxhighlight>


2. Die .htaccess auf oberster Ebene editieren
== Drupal für HS anpassen ==


  # If your site is running in a VirtualDocumentRoot
cd doms/drupal.hs-example.de/subs-ssl/www
  # at http://example.com/,
<syntaxhighlight lang="apache">
  # uncomment the following line:
# vi .htaccess
  # RewriteBase /
# If your site is running in a VirtualDocumentRoot at http://example.com/,
# uncomment the following line:
# RewriteBase /
</syntaxhighlight>


wird zu
wird zu
<syntaxhighlight lang="apache">
# If your site is running in a VirtualDocumentRoot at http://example.com/,
# uncomment the following line:
RewriteBase /
</syntaxhighlight>
== Drupal konfigurieren ==
Im Browser auf die Seite
http://drupal.hs-example.de gehen und den Anweisungen folgen.
[[Datei:Drupal1.jpg]]
[[Datei:Drupal2.jpg]]
[[Datei:Drupal3.jpg]]
[[Datei:Drupal4.jpg]]
[[Datei:Drupal5.jpg]]
[[Datei:Drupal6.jpg]]
[[Datei:Drupal7.jpg]]
== Drupal template default für HS konfigurieren ==
<syntaxhighlight lang="bash">
cd sites/default/files/php/twig
chmod 644 .htaccess
edit .htaccess
</syntaxhighlight>
In der Zeile 11 den Eintrag "-ExecCGI" und  "-Includes" löschen, mit diesem Ergebnis:
<syntaxhighlight lang="apache">
Options -Indexes -MultiViews
</syntaxhighlight>
und dann noch eine .htaccess
<syntaxhighlight lang="bash">
cd ../..
chmod 644 .htaccess
edit .htaccess
</syntaxhighlight>
In der Zeile 2 den Eintrag "-ExecCGI" und  "-Includes" löschen, mit diesem Ergebnis:
<syntaxhighlight lang="apache">
Options -Indexes -MultiViews
</syntaxhighlight>
Danach die Seite im Browser neu laden.
= Mit Ansible bei HS installieren =
== Technische Details ==
Es gibt ein Ansible Skript, das die Installationsschritte für Drupal automatisiert durchführt.
Die Quellen für das Ansible Skript können hier eingesehen werden: https://codeberg.org/tpokorra/hs.ansible/src/branch/main/playbooks/drupal
Es wird die aktuelle Version 10 von Drupal installiert.
Es wird die Installationsvariante mit Composer gewählt, weil sich damit Updates am leichtesten durchführen lassen.
== Installation ==


  # If your site is running in a VirtualDocumentRoot
Folgende Schritte sind auf dem lokalen Rechner auszuführen, um Drupal mit Hilfe des Ansible Skripts in den eigenen Hostsharing Benutzer zu installieren:
  # at http://example.com/,
  # uncomment the following line:
  RewriteBase /


3. Installer ausführen (der Installer erkennt dann auch das mod_rewrite
Klonen des Repositories:
funktioniert und lässt u.a. die .htaccess stehen. Dann setzt der
Installer auch die File Permissions nicht unsinnig (weil behindernd,
aber nicht hilfreich) restriktiv.)


4. Einziges Problem:
$ git clone https://codeberg.org/tpokorra/hs.ansible.git


twig setzt die .htaccess-Option in
Dann muss die Datei inventory-sample.yml kopiert werden, und entsprechend angepasst werden:
./sites/default/files/php/twig/.htaccess:


  Options -Indexes -ExecCGI -Includes -MultiViews
<syntaxhighlight lang="bash">
cd hs.ansible
cp playbooks/drupal/inventory-sample.yml inventories/my.drupal.yml
vi inventories/my.drupal.yml
</syntaxhighlight>


Davon ist bei uns -ExecCGI serverseitig gesetzt, aber nicht durch den
In der my.drupal.yml müssen die entsprechenden Werte eingerichtet werden.
Benutzer änderbar.


Aktuelle Lösung:
Eine Fehlerquelle sind zu lange Namen für user, denn dann kommt die Datenbankverwaltung von hsadmin aus dem Tritt. Bei einem Namen mit 13 Zeichen treten zumindest Fehler auf...


Löschen dieser Direktive aus der Datei.
Es wird vorausgesetzt, dass auf dem lokalen Rechner Ansible installiert ist.
 
Dann kann die Installation vom lokalen Rechner aus gestartet werden:
 
<syntaxhighlight lang="bash">
ansible-playbook -i inventories/my.drupal.yml init.yml
ansible-playbook -i inventories/my.drupal.yml playbooks/drupal/install.yml
</syntaxhighlight>
 
== Einrichtung ==
 
Nach der Installation kann die Seite hier erreicht werden: https://drupal.example.org
 
Bitte mit dem Benutzer und dem Passwort anmelden, die in der Datei my.inventory angegeben wurden.
 
== Links ==
* [https://www.drupal.org/ Englische Webseite vom Drupal Projekt]
* [https://www.drupal.de/ Deutsche Webseite, bereitgestellt vom Drupal e.V.]
* [https://codeberg.org/tpokorra/hs.ansible/src/branch/main/playbooks/drupal Ansible Playbook für Hostsharing]
 
----
[[Kategorie:HSDoku]]
[[Kategorie:Installationsanleitungen]]
[[Kategorie:Ansible Playbook]]
[[Kategorie:Software]]
[[Kategorie:Blog]]
[[Kategorie:CMS]]

Aktuelle Version vom 26. Juli 2024, 18:39 Uhr

Drupal bei HS

Überprüft auf Installation der V 8.6.7.

Aktualisiert auf Basis von drupal 10.3.1 (26.07.2024)

Vorbereitungen

In hsadmin, zum Beispiel mit hsscript:

hsadmin-Shell starten mit:

hsscript -u xyz00 -i
Password: ********

Dann nacheinander anlegen:

  • Linux User als Domain-Administrator
  • Subdomain drupal.hs-example.de
  • MySQL-User
  • MySQL Datenbank
xyz00@hsadmin> user.add({set:{name:'xyz00-drupal',password:'geheim',shell:'/bin/bash',comment:'Drupal CMS'}})
xyz00@hsadmin> domain.add({set:{name:'drupal.hs-example.de',user:'xyz00-drupal'}})
xyz00@hsadmin> mysqluser.add({set:{name:'xyz00_drupaluser',password:'geheim'}})
xyz00@hsadmin> mysqldb.add({set:{name:'xyz00_drupaldb',owner:'xyz00_drupaluser'}})

drupal 10 braucht mindestens php 8.1 Stand Juli 2024 ist die Version auf den Hives php 8.2.21 das kann überprüft werden mit

$ php -v

Falls das nicht aktuell ist bitte die Seite besuchen:

Aktuelle PHP Version nutzen

Drupal installieren

Anmelden als Linux-User xyz00-drupal:

ssh -l xyz00-drupal xyz00.hostsharing.net

Mit Composer

Stand Juli 2024 ist die Composer Version auf den Hives perfekt für drupal, das kann geprüft werden mit:

$ composer --version
oder kurz 
$ composer -V

Die auf den Hives vorhandene Version von Composer kann veraltet sein, daher ist es sinnvoll eine eigene Version zu installieren von: https://getcomposer.org/download/ Siehe auch https://www.drupal.org/docs/develop/using-composer und insbesondere https://www.drupal.org/docs/develop/using-composer/using-composer-to-install-drupal-and-manage-dependencies

cd doms/drupal.hs-example.de/var/
composer create-projekt drupal/recommended-project drupal10

Nun entsteht in dem Ordner var/drupal10/web die neue Drupal Site. Diese dann noch in das entsprechende Verzeichnis (z.B.: subs-ssl/www) verlinken:

rmdir subs-ssl/www
ln -s var/drupal-installationsverzeichnis/web subs-ssl/www

Drupal für HS anpassen

cd doms/drupal.hs-example.de/subs-ssl/www

# vi .htaccess
# If your site is running in a VirtualDocumentRoot at http://example.com/,
# uncomment the following line:
# RewriteBase /

wird zu

# If your site is running in a VirtualDocumentRoot at http://example.com/,
# uncomment the following line:
RewriteBase /

Drupal konfigurieren

Im Browser auf die Seite http://drupal.hs-example.de gehen und den Anweisungen folgen.

Drupal1.jpg

Drupal2.jpg

Drupal3.jpg

Drupal4.jpg

Drupal5.jpg

Drupal6.jpg

Drupal7.jpg

Drupal template default für HS konfigurieren

cd sites/default/files/php/twig
chmod 644 .htaccess
edit .htaccess

In der Zeile 11 den Eintrag "-ExecCGI" und "-Includes" löschen, mit diesem Ergebnis:

Options -Indexes -MultiViews

und dann noch eine .htaccess

cd ../..

chmod 644 .htaccess
edit .htaccess

In der Zeile 2 den Eintrag "-ExecCGI" und "-Includes" löschen, mit diesem Ergebnis:

Options -Indexes -MultiViews

Danach die Seite im Browser neu laden.

Mit Ansible bei HS installieren

Technische Details

Es gibt ein Ansible Skript, das die Installationsschritte für Drupal automatisiert durchführt.

Die Quellen für das Ansible Skript können hier eingesehen werden: https://codeberg.org/tpokorra/hs.ansible/src/branch/main/playbooks/drupal

Es wird die aktuelle Version 10 von Drupal installiert.

Es wird die Installationsvariante mit Composer gewählt, weil sich damit Updates am leichtesten durchführen lassen.

Installation

Folgende Schritte sind auf dem lokalen Rechner auszuführen, um Drupal mit Hilfe des Ansible Skripts in den eigenen Hostsharing Benutzer zu installieren:

Klonen des Repositories:

$ git clone https://codeberg.org/tpokorra/hs.ansible.git

Dann muss die Datei inventory-sample.yml kopiert werden, und entsprechend angepasst werden:

cd hs.ansible
cp playbooks/drupal/inventory-sample.yml inventories/my.drupal.yml
vi inventories/my.drupal.yml

In der my.drupal.yml müssen die entsprechenden Werte eingerichtet werden.

Eine Fehlerquelle sind zu lange Namen für user, denn dann kommt die Datenbankverwaltung von hsadmin aus dem Tritt. Bei einem Namen mit 13 Zeichen treten zumindest Fehler auf...

Es wird vorausgesetzt, dass auf dem lokalen Rechner Ansible installiert ist.

Dann kann die Installation vom lokalen Rechner aus gestartet werden:

ansible-playbook -i inventories/my.drupal.yml init.yml
ansible-playbook -i inventories/my.drupal.yml playbooks/drupal/install.yml

Einrichtung

Nach der Installation kann die Seite hier erreicht werden: https://drupal.example.org

Bitte mit dem Benutzer und dem Passwort anmelden, die in der Datei my.inventory angegeben wurden.

Links