Benutzer-Werkzeuge

Webseiten-Werkzeuge


software:middleware:installation

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
software:middleware:installation [2019/03/17 14:36] – PHP 7.1 jausoftware:middleware:installation [2019/03/19 15:43] – Typo jau
Zeile 1: Zeile 1:
  
-===== Installation der Middleware =====+====== Installation der Middleware ======
  
 This installs the middleware and the frontend. You also need to install the logger (vzlogger). This installs the middleware and the frontend. You also need to install the logger (vzlogger).
  
-==== Voraussetzungen ==== +===== Voraussetzungen ===== 
-  * PHP 7.1 (nicht verfügbar 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, PostgreSQL oder SQLite + PDO Treiber
Zeile 14: Zeile 14:
 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 libapache2-mod-php7.1 php7.1-cli php7.1-mysql php-apcu mysql-server mysql-client php7.1-xml php-mbstring ca-certificates apache2+<code>sudo apt-get install git-core php7.1-cli php7.1-mysql php-apcu mysql-server mysql-client php7.1-xml php-mbstring ca-certificates 
 </code> </code>
 bzw. für PostgreSQL  bzw. für PostgreSQL 
-<code>apt-get install git-core libapache2-mod-php7.1 php7.1-cli php7.1-pgsql php-apcu postgresql-8.4</code>+<code>apt-get install git-core php7.1-cli php7.1-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 26: Zeile 26:
  
  
-==== Install-Skript (empfohlene Installationsmethode) ====+===== Install-Skript (empfohlene Installationsmethode) =====
 <code> <code>
 wget https://raw.github.com/volkszaehler/volkszaehler.org/master/bin/install.sh wget https://raw.github.com/volkszaehler/volkszaehler.org/master/bin/install.sh
Zeile 50: Zeile 50:
  git: /usr/bin/git  git: /usr/bin/git
  
-checking php version: 7.0.19->= 7.0, ok+checking php version: 7.3.2->= 7.1, ok
  
 volkszaehler setup... volkszaehler setup...
Zeile 124: Zeile 124:
 Generating autoload files Generating autoload files
  
-install server-side graph generation (jpgraph, not required for frontend)? [n] 
 /home/pi /home/pi
  
Zeile 165: Zeile 164:
 Das Script fragt, was es wohin installieren soll. Das Script fragt, was es wohin installieren soll.
  
 +==== Webserver per PPM (empfohlene Methode)====
 +Der PPM-Webserver auf Basis von PHP läuft wesentlich Performanter als Apache2 und ist gerade auf schwacher Hardware wie RaspberryPi zu empfehlen.
  
-=== Apache unter Debian "Wheezy" konfigurieren === +  - Systemd Service einrichten ''sudo nano /etc/systemd/system/middleware.service''<code> 
-  * mod_rewrite aktivieren: +[Unit] 
-<code> +Description=Volkszaehler.org Middleware 
-sudo a2enmod rewrite +After=syslog.target network.target 
-</code>+Requires=
  
-  * Default VirtualHost bearbeiten ( die Datei: "000-default" bearbeiten): +[Service] 
-<code> +ExecStart=/usr/bin/php /var/www/volkszaehler.org/vendor/bin/ppm start -/var/www/volkszaehler.org/etc/middleware.json --static-directory /var/www/volkszaehler.org/htdocs --cgi-path=/usr/bin/php 
-sudo nano /etc/apache2/sites-enabled/000-default +ExecReload=/bin/kill -HUP $MAINPID 
-</code>+StandardOutput=journal 
 +Restart=always
  
-  * In der Datei, neben< DocumentRoot > :+[Install] 
 +WantedBy=multi-user.target </code> 
 +  - Server Port anpassen ''nano ~/volkszaehler.org/etc/middleware.json'' <code> 
 +"port": 80,</code> 
 +  - Middleware Weiterleitung ''url'' anpassen ''nano ~/volkszaehler.org/htdocs/js/options.js'' <code> 
 +title: 'Local (default)', 
 +url: '', 
 +live: 8082</code> 
 +  - Systemd Service bei boot aktiveren ''sudo systemctl enable middleware'' 
 +  - Systemd Service starten ''sudo systemctl start middleware'' 
 + 
 +==== Alternative: Apache installieren (unter Debian "Jessie" und "Stretch") ==== 
 +  Pakete installieren ''sudo apt-get install apache2 libapache2-mod-php7.1'' 
 +  * mod_rewrite aktivieren: ''sudo a2enmod rewrite'' 
 +  * Default VirtualHost bearbeiten: ''sudo nano /etc/apache2/sites-enabled/000-default.conf'' 
 +  ' In der Datei, neben ''< DocumentRoot >'' eintragen:
 <code> <code>
  /var/www/volkszaehler.org/htdocs/  /var/www/volkszaehler.org/htdocs/
 </code> </code>
-eintragen. 
  
-  * unter <Directory /var/www/>: (Achtung <Directory> taucht öfter auf.) +  * Apache Config bearbeiten um Rewrite zu erlauben: ''sudo nano /etc/apache2/apache2.conf'' 
-neben<AllowOverride>+  * In der Datei den Abschnitt suchen:
 <code> <code>
-FileInfo Limit Options Indexes Authconfig+<Directory /var/www/> 
 +        Options Indexes FollowSymLinks 
 +        AllowOverride None 
 +        Require all granted 
 +</Directory>
 </code> </code>
-eintragen. Das "none" wird überschrieben.+   * in ''AllowOverride All AuthConfig'' ändern.
  
-Die Datei sollte dann so aussehen: +Nach dem editieren und abspeichern der Datei ''sudo systemctl restart apache2'' ausführen.
- +
-<code> +
-<VirtualHost *:80> +
-        ServerAdmin webmaster@localhost +
- +
-        DocumentRoot /var/www/volkszaehler.org/htdocs/ +
-        <Directory /> +
-                Options FollowSymLinks +
-                AllowOverride None +
-        </Directory> +
-        <Directory /var/www/> +
-                Options Indexes FollowSymLinks MultiViews +
-                AllowOverride FileInfo Limit Options Indexes AuthConfig +
-                Order allow,deny +
-                allow from all +
-        </Directory> +
- +
-        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ +
-        <Directory "/usr/lib/cgi-bin"> +
-                AllowOverride None +
-                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch +
-                Order allow,deny +
-                Allow from all +
-        </Directory> +
- +
-        ErrorLog ${APACHE_LOG_DIR}/error.log +
- +
-        # Possible values include: debug, info, notice, warn, error, crit, +
-        # alert, emerg. +
-        LogLevel warn +
- +
-        CustomLog ${APACHE_LOG_DIR}/access.log combined +
-</VirtualHost> +
-</code> +
- +
-=== Apache unter Debian "Jessie" und "Stretch" konfigurieren === +
-  * mod_rewrite aktivieren: +
-<code> +
-sudo a2enmod rewrite +
-</code> +
- +
-  * Default VirtualHost bearbeiten ( die Datei: "000-default.conf" bearbeiten): +
-<code> +
-sudo nano /etc/apache2/sites-enabled/000-default.conf +
-</code> +
- +
-  * In der Datei, neben: < DocumentRoot > : +
-<code> +
- /var/www/volkszaehler.org/htdocs/ +
-</code> +
-eintragen. +
- +
-Nach dem editieren und abspeichern der Datei+
-<code> +
- sudo systemctl restart apache2 +
-</code> +
-ausführen.+
  
 Sollte es zu einem PHP Fehler beim Anlegen der Datenbank kommen versucht mal Doctrine per Hand zu Installieren. Sollte es zu einem PHP Fehler beim Anlegen der Datenbank kommen versucht mal Doctrine per Hand zu Installieren.
  
-==== Manuelle Installation ====+===== Manuelle Installation =====
  
 === Download der volkszaehler.org Skripte === === Download der volkszaehler.org Skripte ===
Zeile 401: Zeile 364:
 </code> </code>
  
-===== 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. Nachdem Volkszähler im Zuge der Installation eine Kopie des git Repositories erstellt, kann die Installation auch aus diesem Repository aktualisiert werden.
Zeile 408: Zeile 371:
  
  
-===== phpMyAdmin installieren =====+====== phpMyAdmin installieren ======
 <note important>Für Vollzugriff auf die Volkszählerdatenbank über phpMyAdmin haben wir den User ''vz-admin''. Standardpasswort: ''secure''</note> <note important>Für Vollzugriff auf die Volkszählerdatenbank über phpMyAdmin haben wir den User ''vz-admin''. Standardpasswort: ''secure''</note>
 MySQL-Superuser ist: ''root'' und das Standardpasswort: ''raspberry''\\ MySQL-Superuser ist: ''root'' und das Standardpasswort: ''raspberry''\\
Zeile 421: Zeile 384:
 Um dem neuen User volle Adminrechte zu gewähren: Um dem neuen User volle Adminrechte zu gewähren:
 <code>sudo mysql -uroot -praspberry --execute "grant all privileges on *.* to 'phpmyadmin'@'localhost' with grant option"</code> <code>sudo mysql -uroot -praspberry --execute "grant all privileges on *.* to 'phpmyadmin'@'localhost' with grant option"</code>
- 
-==== Debian Jessie ==== 
-<code>sudo apt-get install phpmyadmin</code> 
-<code>sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/sites-enabled/phpmyadmin.conf</code> 
-<code>sudo systemctl restart apache2</code> 
- 
-==== Debian Wheezy ==== 
-<code>sudo apt-get install phpmyadmin</code> 
-<code>sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf.d/phpmyadmin.conf</code> 
-<code>sudo /etc/init.d/apache2 reload</code> 
  
software/middleware/installation.txt · Zuletzt geändert: 2023/03/27 21:14 von joha