[[Vorlage(Archiviert)]] [[Vorlage(Fortgeschritten)]] {{{#!vorlage Wissen [:Pakete_installieren: Installation von Programmen] [:Editor: Einen Editor öffnen] [:Packprogramme: Archive entpacken] [:Terminal: Ein Terminal öffnen] [:Rechte: Dateirechte bearbeiten] }}} [[Inhaltsverzeichnis(2)]] [[Bild(drupallogo.png, 48, align=left)]] [http://drupal.org/ Drupal] {en} ist ein Content-Management-System (CMS) und Framework, das ursprünglich vom belgischen Informatiker Dr. Dries Buytaert konzipiert wurde und inzwischen in den unterschiedlichsten Anwendungsbereichen weltweit zum Einsatz kommt. Es ist in [:PHP:] geschrieben und verwendet [:MySQL:], [:PostgreSQL:] oder [:SQLite:] als Datenbank. Als Lizenz wird die [http://www.gnu.org/licenses/licenses.html#GPL GNU General Public License] {en} verwendet. Drupal existiert in mehreren Hauptversionen: die aktuelle Version 8 und die ältere Version 7. Die noch ältere Version 6 sollte nicht mehr eingesetzt werden, da die offizielle Unterstützung im Februar 2016 ausgelaufen ist. Neben den Kernfunktionen bieten zusätzlich installierbare Module die Möglichkeit, die Funktionalität zu erweitern. Damit spielt es in der gleichen Liga wie beispielsweise [:Joomla!:], [wikipedia:TYPO3:] oder [wikipedia:Wordpress:]. = Voraussetzungen = Dieser Artikel beschreibt die Installation und Konfiguration von Drupal in Kombination mit dem Webserver Apache, PHP und MySQL (andere Webserver und Datenbank-Systeme werden im Rahmen des Artikels nicht berücksichtigt). Weitere Informationen finden sich in den folgenden Artikeln: * [:Apache_2.4:Apache] * [:PHP:] * [:MySQL:] Des Weiteren benötigt Drupal für den Versand von E-Mails einen Mail Transfer Agent (MTA). Hierfür wird üblicherweise [:Postfix:] genutzt. {{{#!vorlage Experten Je nach Drupal-Version werden bestimmte Versionen von PHP und MySQL benötigt: [https://www.drupal.org/requirements System requirements] {en}. }}} = Installation = Bei der Installation aus den offiziellen Paketquellen werden Webserver, PHP und Datenbank automatisch installiert und eingerichtet. Obwohl Drupal Bestandteil der offiziellen Paketquellen ist, ist es der Sektion ''universe'' zugeordnet und erhält damit keine Sicherheitsaktualisierungen! Daher wird beispielsweise für einen öffentlichen zugänglichen Webserver eine [#Drupal-8 manuelle Installation] empfohlen, um später (Sicherheits-)Updates zeitnah einspielen zu können. == Drupal 7 == Zur Installation von Drupal 7 aus den offiziellen Paketquellen wird das folgende Paket installiert [1]: {{{#!vorlage Paketinstallation drupal7, universe }}} Wenn die Datenbank nicht lokal ihren Dienst verrichtet, muss während der Installation die Frage nach der Konfiguration mit Hilfe von "`dbconfig`" mit ''"Nein"'' beantwortet werden. Ansonsten den Anweisungen am Bildschirm folgen und die Datenbankzugangsdaten eingeben. {{{#!vorlage Hinweis Wenn bei der Installation "`dbconfig`" nicht ausgeführt wurde, muss die Datenbankverbindung von Hand konfiguriert werden. Dieses erfolgt in der Datei '''/etc/drupal/7/sites/default/dbconfig.php'''. Möchte man hier etwas ändern, so öffnet man die Datei mit einem Texteditor [2] und passt die Datenbankdaten entsprechend dem Beispiel an: {{{ $dbuser='datenbankuser'; $dbpass='datenbankpasswort'; $basepath=''; $dbname='datenbankname'; $dbserver='datenbankserver'; $dbport=''; $dbtype='mysql'; \}}} }}} Nun muss das Drupal-Modul noch registriert werden: {{{#!vorlage Befehl sudo cp /etc/drupal/7/apache2.conf /etc/apache2/conf-available/drupal.conf sudo a2enconf drupal.conf }}} und Apache neu gestartet werden. Nun kann der Installationsassistent mit einem beliebigen Browser aufgerufen werden: * `http://SERVER-IP_ODER_NAME/drupal7/install.php` Nach Abschluss der Installation kann Drupal 7 via `http://SERVER-IP_ODER_NAME/drupal7/` administriert werden. == Drupal 8 == Für eine manuelle Installation von Drupal 8 muss zuerst ein funktionierender Webserver, PHP und eine Datenbank installiert werden. Des Weiteren wird [:Apache/mod_rewrite:] und eine eingerichtete Datenbank vorausgesetzt. Um ein deutschsprachiges Drupal 8 zu installieren, müssen zusätzliche Sprachdateien separat heruntergeladen werden: * [https://www.drupal.org/download/ Drupal Core] {en} {dl} * [https://localize.drupal.org/translate/languages/de Deutsche Sprachdateien] {de} {dl} Die heruntergeladenen Archivdateien werden entpackt [3] und in das "document root" des Webservers kopiert, z.B. bei Apache 2.4 nach '''/var/www/html/drupal/'''. Damit das Installationsskript später Einstellungen vornehmen kann, müssen zwei Konfigurationsdateien erstellt und Schreibrechte vergeben werden [4][5]: {{{#!vorlage Befehl sudo cp /var/www/html/drupal/sites/default/default.settings.php /var/www/html/drupal/sites/default/settings.php sudo cp /var/www/html/drupal/sites/default/default.services.yml /var/www/html/drupal/sites/default/services.yml sudo chmod 664 /var/www/html/drupal/sites/default/settings.php sudo chmod 664 /var/www/html/drupal/sites/default/services.yml sudo chown -R :www-data /var/www/html/drupal/* }}} In einem [:Internetanwendungen#Webbrowser:Browser] kann man nun die URL `http://SERVER-IP_ODER_NAME/drupal/install.php` aufrufen. Wenn man alles richtig gemacht hat, erscheint hier die Auswahl, in welcher Sprache die Installation durchgeführt werden soll. === Datenbank === Im weiteren Verlauf der Installation wird der Datenbank-Zugriff eingerichtet (eine Datenbank muss bereits existieren!): * Datenbankname: `DB-Name` * Datenbank-Benutzer: `DB-Benutzer` * Datenbank-Passwort: `DB-Passwort` Das ''"erweiterte Einstellungen"''-Menü öffnen: * Datenbankhost: `localhost` (oder die IP-Adresse des Servers) === Dateirechte === Danach sollten die Schreibberechtigungen wieder entzogen werden: {{{#!vorlage Befehl sudo chmod 644 /var/www/html/drupal/sites/default/settings.php sudo chmod 644 /var/www/html/drupal/sites/default/services.yml sudo chmod 755 /var/www/html/drupal/sites/default }}} === Update === Um eine Drupal-8-Installation zu aktualisieren, folgt man der offiziellen Dokumentation: [https://www.drupal.org/node/2700999 Update procedure in Drupal 8] {en} = Konfiguration = Zur Verwaltung wird die Weboberfläche über die URL `http://SERVER-IP_ODER_NAME/drupal/` aufrufen. Nun müssen noch die Webseiteninfos angegeben und ein Administrator-Konto zur Verwaltung eingerichtet werden. Zumindest an dieser Stelle erwähnt werden soll das Konfigurationswerkzeug [http://www.drush.org/ drush] {en}. Es arbeitet auf der Kommandozeile und stellt nicht nur für Fortgeschrittene umfangreiche Funktionen bereit, um eine Drupal-Installation zu pflegen. = Links = * [http://drupal.org/ Projektseite] {en} * [https://www.drupal.org/documentation Documentation] {en} * [https://www.drupal.org/security/secure-configuration Securing your site] {en} - Sicherheitshinweise * [wikipedia:Drupal:] * [ubuntu_doc:community/Drupal:Drupal im Ubuntu-Wiki] {en} * [http://www.drupalcenter.de/ DrupalCenter.de] {de} - deutschsprachige Community * [http://www.drupal-initiative.de/die-drupal-community-in-deutschland Deutsche Drupal User Groups] {de} * [http://4digits.net/blog/drupal/installing-drupal-8-on-linux.html Installing Drupal 8 on Linux] {en} * [https://www.linode.com/docs/websites/cms/install-and-configure-drupal-8 Install and Configure Drupal 8] {en} - Blogbeitrag, 11/2015 * [heise:-2924230:Drupal 8: Content Management runderneuert] {de} - heise Open Source, 11/2015 * [https://www.digitalocean.com/community/tutorials/how-to-install-drupal-on-an-ubuntu-14-04-server-with-apache How To Install Drupal on an Ubuntu 14.04 Server with Apache] {en} - Blogbeitrag, 09/2014 * [https://www.howtoforge.com/tutorial/how-to-install-drupal_8-with-apache-and-ssl-on-ubuntu-15-10/ How to Install Drupal 8 with Apache, MySQL and SSL on Ubuntu 15.10] {en} - Artikel howtoforge.com, 01/2016 * [:Content_Management_Systeme:] {Übersicht} Übersichtsartikel #tag: Server, Content Management System