Benutzer-Werkzeuge

Webseiten-Werkzeuge


software:middleware:installation

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste Überarbeitung Beide Seiten der Revision
software:middleware:installation [2021/02/11 15:30]
jau [Apache als Proxy (empfohlene Methode)] vervollständigt
software:middleware:installation [2021/12/28 19:46]
jau Image mag kein Update per Script
Zeile 7: Zeile 7:
   * PHP 7.1 (nicht verfügbar in Raspbian Stretch!)   * PHP 7.1 (nicht verfügbar in Raspbian Stretch!)
   * Doctrine 2.5   * Doctrine 2.5
-  * MySQL, MariaDB, PostgreSQL oder SQLite + PDO Treiber+  * MySQL, MariaDB + PDO Treiber
   * APC (optional, aber empfohlen)   * APC (optional, aber empfohlen)
   * Apache, nginx (optional)   * Apache, nginx (optional)
Zeile 13: Zeile 13:
 Es eigenen sich hier Debian oder Ubuntu, sowie für den Raspberry Pi: Raspbian oder Raspbian Light.("Buster"-Version, oder "Stretch" mit PHP Update)\\ Es eigenen sich hier Debian oder Ubuntu, sowie für den Raspberry Pi: Raspbian oder Raspbian Light.("Buster"-Version, oder "Stretch" mit PHP Update)\\
 Die Abhängigkeiten lassen sich schnell mit folgendem Befehl installieren: Die Abhängigkeiten lassen sich schnell mit folgendem Befehl installieren:
-<code>sudo apt-get install git-core php-cli php-mysql php-apcu mariadb-server mariadb-client php-xml php-mbstring ca-certificates zip unzip php-zip+<code>sudo apt-get install git-core php-cli php-mysql php-apcu mariadb-server mariadb-client php-xml php-mbstring php-opcache php-common ca-certificates zip unzip php-zip apt-transport-https php-curl
 </code> </code>
-bzw. für PostgreSQL  
-<code>sudo apt-get install git-core php-cli php-pgsql php-apcu postgresql-8.4</code> 
  
 Für die manuelle Installation wird zudem "curl" benötigt. Für die manuelle Installation wird zudem "curl" benötigt.
Zeile 209: Zeile 207:
 ==== Apache als Proxy (empfohlene Methode) ==== ==== Apache als Proxy (empfohlene Methode) ====
 Dazu Apache auf die Weiterleitung zum PPM reduzieren. Dazu Apache auf die Weiterleitung zum PPM reduzieren.
-<code>sudo a2enmod proxy+  - Module aktivieren<code> 
 +sudo a2enmod proxy
 sudo a2enmod proxy_http sudo a2enmod proxy_http
-sudo a2enmod rewrite +sudo a2enmod rewrite</code> 
-nano ~/volkszaehler.org/htdocs/.htaccess</code> +  - Rewrite-Proxy aktivieren, ''nano ~/volkszaehler.org/htdocs/.htaccess''Die Kommentarzeichen vor den Zeilen entfernen:<code>
-Die Kommentarzeichen vor den Zeilen entfernen: +
-<code>+
 <IfModule mod_proxy.c> <IfModule mod_proxy.c>
         RewriteEngine On         RewriteEngine On
Zeile 222: Zeile 219:
 </IfModule> </IfModule>
 </code> </code>
-Default VirtualHost bearbeiten: ''sudo nano /etc/apache2/sites-enabled/000-default.conf'' +  - Default VirtualHost bearbeiten: ''sudo nano /etc/apache2/sites-enabled/000-default.conf''. Dort ''< DocumentRoot >'' suchen und ändern: <code> 
-In der Datei, neben ''< DocumentRoot >'' eintragen: +        DocumentRoot /var/www/volkszaehler.org/htdocs/
-<code> +
- /var/www/volkszaehler.org/htdocs/+
 </code> </code>
- +  - Apache Config bearbeiten um Rewrite in .htaccess zu erlauben: ''sudo nano /etc/apache2/apache2.conf'' In der Datei den Abschnitt suchen: <code>
-Apache Config bearbeiten um Rewrite zu erlauben: ''sudo nano /etc/apache2/apache2.conf'', in der Datei den Abschnitt suchen: +
-<code>+
 <Directory /var/www/> <Directory /var/www/>
         Options Indexes FollowSymLinks         Options Indexes FollowSymLinks
Zeile 235: Zeile 228:
         Require all granted         Require all granted
 </Directory> </Directory>
-</code> +</code>''AllowOverride None'' in ''AllowOverride All AuthConfig'' ändern.\\ 
-''AllowOverride None'' in ''AllowOverride All AuthConfig'' ändern.\\ +  Dann den Apache nur noch neu starten ''sudo systemctl restart apache2''
-Dann den Apache nur noch neu starten +
-<code>sudo systemctl restart apache2</code>+
  
 ==== Alternativ: nginx als Proxy ==== ==== Alternativ: nginx als Proxy ====
Zeile 309: Zeile 300:
 ==== Alternativ: Apache als Server (unter Debian "Stretch") ==== ==== Alternativ: Apache als Server (unter Debian "Stretch") ====
 <note>Möchte man von PPM auf Apache als Server umstellen sind auch die Änderungen an der Middleware-Konfiguration für PPM zurück zu nehmen: ''url: 'api' ''</note> <note>Möchte man von PPM auf Apache als Server umstellen sind auch die Änderungen an der Middleware-Konfiguration für PPM zurück zu nehmen: ''url: 'api' ''</note>
-  * Pakete installieren ''sudo apt-get install apache2 libapache2-mod-php7.3''+  * Pakete installieren ''sudo apt-get install apache2 libapache2-mod-php''
   * mod_rewrite aktivieren: ''sudo a2enmod rewrite''   * mod_rewrite aktivieren: ''sudo a2enmod rewrite''
   * Default VirtualHost bearbeiten: ''sudo nano /etc/apache2/sites-enabled/000-default.conf''   * Default VirtualHost bearbeiten: ''sudo nano /etc/apache2/sites-enabled/000-default.conf''
Zeile 359: Zeile 350:
  
 Wichtig ist dass in der config in der Zeile "location ~ \.php {" kein $-Zeichen hinter dem PHP steht. Siehe [[https://lists.volkszaehler.org/pipermail/volkszaehler-dev/2011-June/000925.html|Mail Archiv]] Wichtig ist dass in der config in der Zeile "location ~ \.php {" kein $-Zeichen hinter dem PHP steht. Siehe [[https://lists.volkszaehler.org/pipermail/volkszaehler-dev/2011-June/000925.html|Mail Archiv]]
 +
 +==== Alternativ: Lighttpd als Server ====
 +Notwendige Rewrite-Regeln:
 +<code>
 +    url.rewrite-if-not-file = (
 +        "^/(?:middleware|api)(/.*)?" => "/middleware.php$1",
 + "^/frontend/(.*)" => "$1"
 +    )
 +</code>
  
  
Zeile 407: Zeile 407:
  
 === Datenbank konfigurieren === === Datenbank konfigurieren ===
-  * Datenbank-User anlegen:+  * Datenbank anlegen: 
 +<code> 
 +mysql: 
 +    CREATE DATABASE `volkszaehler`; 
 +     
 +oder phpmyadmin: 
 +    Home -> "Datenbank anlegen", Name"volkszaehler" -> "Anlegen"  ​ 
 +</code>
  
 +  * Datenbank-User anlegen:
 <code> <code>
-phpmyadmin:+mysql: 
 +    GRANT ALL ON volkszaehler.* to 'vz_admin'@'localhost' IDENTIFIED BY '<shhhh!>' WITH GRANT OPTION; 
 +    CREATE USER 'vz'@'localhost' IDENTIFIED BY '<shhhh!>'; 
 +    GRANT USAGE ON volkszaehler.* TO 'vz'@'localhost'; 
 +    GRANT SELECT, UPDATE, INSERT ON volkszaehler.* TO 'vz'@'localhost'; 
 +         
 +oder phpmyadmin: 
 +    Home -> "Rechte" -> "Neuen Benutzer hinzufügen" 
 +        Benutzername: vz_admin 
 +        Host: localhost 
 +        Passwort: <shhh!> 
 +        Vollzugriff (Grant All) auf DB volkszaehler erlauben. 
 +        -> ok
     Home -> "Rechte" -> "Neuen Benutzer hinzufügen"     Home -> "Rechte" -> "Neuen Benutzer hinzufügen"
         Benutzername: vz         Benutzername: vz
Zeile 417: Zeile 437:
         keine globalen Rechte vergeben!         keine globalen Rechte vergeben!
         -> ok         -> ok
-oder: 
-    CREATE USER 'vz'@'localhost' IDENTIFIED BY '<shhhh!>'; 
-</code> 
- 
-  * Datenbank anlegen: 
-<code> 
-phpmyadmin 
-    Home -> "Datenbank anlegen", Name: "volkszaehler" -> "Anlegen" 
-oder: 
-    CREATE DATABASE `volkszaehler`; 
 </code> </code>
  
-  * Tabellen anlegen:+ * Tabellen anlegen:
 <code> <code>
 # cd /var/www/volkszaehler.org/ # cd /var/www/volkszaehler.org/
Zeile 476: Zeile 486:
 ====== Aktualisierung der Middleware einschließlich des Frontends ====== ====== Aktualisierung der Middleware einschließlich des Frontends ======
  
-Nachdem Volkszähler im Zuge der Installation eine Kopie des git Repositories erstellt, kann die Installation auch aus diesem Repository aktualisiert werden.+Wenn nur die ''./etc/config.yaml'' angepasst kann wieder das [[software:middleware:installation#install-skript_empfohlene_methode|Installationsskript]] von oben verwendet werden. Da die Datenbank vermutlich nicht angetastet werden soll, die entsprechenden Fragen einfach verneinen.
  
-Eine Beschreibung findet sich im Kapitel zu [[/howto/git]].+Nachdem Volkszähler im Zuge der Installation eine Kopie des git Repositories erstellt, kann die Installation aber auch aus diesem Repository aktualisiert werden. Eine Beschreibung findet sich im Kapitel zu [[/howto/git]]. Beim Image ist dies der notwendige Weg weil da auch andere Dateien editiert wurden.
  
  
software/middleware/installation.txt · Zuletzt geändert: 2022/05/13 10:27 von jay