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
software:middleware:installation [2021/02/10 17:11]
jau Empfehlung: PPM + Apache
software:middleware:installation [2021/12/28 19:46] (aktuell)
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 208: Zeile 206:
  
 ==== Apache als Proxy (empfohlene Methode) ==== ==== Apache als Proxy (empfohlene Methode) ====
-Auch Apache kann auf die Weiterleitung zum PPM reduziert werden+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
-nano ~/volkszaehler.org/htdocs/.htaccess</code> +sudo a2enmod rewrite</code> 
-Die Kommentarzeichen vor den Zeilen entfernen: +  - Rewrite-Proxy aktivieren, ''nano ~/volkszaehler.org/htdocs/.htaccess''Die Kommentarzeichen vor den Zeilen entfernen:<code>
-<code>+
 <IfModule mod_proxy.c> <IfModule mod_proxy.c>
         RewriteEngine On         RewriteEngine On
         RewriteRule ^middleware(.php)?(/.*)? http://localhost:8080/$2 [P]         RewriteRule ^middleware(.php)?(/.*)? http://localhost:8080/$2 [P]
         RewriteRule ^api(/.*)$ http://localhost:8080/$1 [P]         RewriteRule ^api(/.*)$ http://localhost:8080/$1 [P]
 +        RewriteRule (.*) http://localhost:8080/$1 [P]
 </IfModule> </IfModule>
 </code> </code>
-Dann den Apache nur noch neu starten +  - Default VirtualHost bearbeiten: ''sudo nano /etc/apache2/sites-enabled/000-default.conf''. Dort ''< DocumentRoot >'' suchen und ändern: <code> 
-<code>sudo systemctl restart apache2</code>+        DocumentRoot /var/www/volkszaehler.org/htdocs/ 
 +</code> 
 +  - Apache Config bearbeiten um Rewrite in .htaccess zu erlauben: ''sudo nano /etc/apache2/apache2.conf'' In der Datei den Abschnitt suchen: <code> 
 +<Directory /var/www/> 
 +        Options Indexes FollowSymLinks 
 +        AllowOverride None 
 +        Require all granted 
 +</Directory> 
 +</code>''AllowOverride None'' in ''AllowOverride All AuthConfig'' ändern.\\ 
 +  - Dann den Apache nur noch neu starten ''sudo systemctl restart apache2''
  
 ==== Alternativ: nginx als Proxy ==== ==== Alternativ: nginx als Proxy ====
Zeile 292: 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 342: 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 390: 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 400: 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 459: 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.1612973502.txt.gz · Zuletzt geändert: 2021/02/10 17:11 von jau