PHP 7.3.7 und Apache mit HTTP/2 Support für IPFire Download

Anregungen & Feature Requests
User avatar
gocart
Posts: 556
Joined: December 16th, 2013, 4:43 pm
Location: Germany

PHP 7.3.7 und Apache mit HTTP/2 Support für IPFire Download

Post by gocart » February 14th, 2018, 9:25 pm

PHP 7.3.7 und Apache 2.4.39 mit HTTP/2 und Brotli Support für IPFire Download

Dies ist ein Installer der PHP 7.3.7 und höher sowie Apache 2.4.39 mit HTTP/2 Support in IPFire nach Core 133 und höher nachrüstet. Perl wird mit diesem Installer auf die 5.28.1 gehoben. Alle in Pakfire enthaltenen Module sind bereits integriert. PHP wird mit den PHP-Modulen redis-3.1.4, apcu-5.1.8 sowie ImageMagik 7.0.8 Installiert. Nexcloud nutzt redis sowie apcu (memcache). Roundcube auch ImageMagik. Der Redis Server ist in der Version 4.0.11 mit enthalten und wird automatisch gestartet. (einfach Autostart deaktivieren wenn nicht benötigt) Ich stelle die Pakete für i586 und x86_64 zu Verfügung. ARM Plattformen wird nicht unterstützt. Diese Pakete sind keine offiziellen IPFire Updates!

Achtung:
Die Aktualisierung dieser Anwendung erfolgt immer über die Aktualisierung dieses Installers. Sollte es zu Problemen mit Installation kommen kann es durch ein erneutes vollständiges Ausführen des Installers einfach wieder repariert werden. Über Pakfire werden keine PHP Pakete mehr bereit gestellt.

*** Installation ***
Allgemeines zur Installation:
Für die Installation muss der SSH Zugriff von IPFire aktiviert werden. Unter Windows am besten WINSCP und Putty nutzen. Die Installation erfolgt mit Hilfe das folgenden Bash-Skipts (der Downloader). Dieses lädt den Installer vom IPfire Server.

Installationsdetails:
Die install.txt umbenennen und nach /var/tmp kopieren oder dort erstellen. Dann mit "chmod +x install.sh" ausführbar machen und aufrufen: "./install.sh". Wird das Installer-Paket in dem gleichen Ordner nicht gefunden wird der Download von http://people.ipfire.org/~mlorenz/php/ durchgeführt.Der manuelle Download ist über den genannten Link möglich. Bei eventuellen Ckecksum Fehlern bitte Rückmeldung im Thread.

Die Install.sh gibt es hier als: install.txt.

Technische Umsetzung:
PHP läuft als FPM Daemon und Apache kommuniziert mit PHP über einen Unix Socket (/var/run/php-fpm.sock). Es gibt kein php*.so als Modul für Apache mehr. Der php-fpm wird automatisch gestartet. Das Verzeichnis für die Webanwendungen ist nach /var/www/html/[Appname] verlegt. Die IPFire Basispartition ist mit 2GB schlicht zu kapp bemessen für größere Anwendungen wie Nextcloud. Die ursprünglichen /srv/web/ipfire Daten bleiben hiervon unberührt. PHP nutzt für die Session-Handler Redis als In-Memory-DB. Wer das nicht braucht kann in der /etc/php.ini die Option "session.save_path" umstellen. Die Optionen sind vorhanden und auskommentiert. (/tmp). Die von mir angeboten WebApps erstellen eine webapps.conf in /etc/httpd/conf/vhosts.d mit auf Port 443 sowie der FPM Konfiguration. Ein weiteres Verzeichnis /etc/httpd/conf/apps.d wird angelegt, welches die spezifische WebApp-Konfig aufnimmt. Die angesprochenen Konfigurationsdateien werden erst mit der Installation der ersten Webanwendung verfügbar. z.B phpMyAdmin.

Optionale Downloads:
Die MariaDB 10.3.11 Package x64 und X86. Nextcloud 15.0.4 gibt es hier: Click und phpMyAdmin 4.8.5 hier Click. Diese Paket nach /opt/pakfire/tmp legen, mit tar axf [name] auspacken und dann die dortige install.sh aufrufen. Auf der Nextcloud Webseite kann dann die MariaDB-Datenbank eingerichtet werden (DB-Server 127.0.0.1 IPfire default Login: root und mysqlfire). Es sollte vielleicht vorher mit phpmyadmin geändert bzw. ein neuer Benutzer plus DB dafür angelegt werden ;). Wenn das root pw geändert wird, muss zwingend in der /etc/my.cnf der Eintrag password mit aktualisiert werden, sonst Probleme beim nächsten Update.

Version 15 - Update vom 09.07.2019
PHP 7.3.7
Perl 5.30.0
Aktuelle Perl Module von Juni 2019

Version 14 - Update vom 28.06.2019
PHP 7.3.6
c-ares 1.15
icu 64.2
libopenjpeg 2.3.1
nghttp2 1.38
libpng 1.6.37

Version 13 - Update vom 31.05.2019
PHP 7.2.18
curl 7.65.0
OpenSSL 1.1.1c
glibc 2.29
mit GCC 8.3 kompiliert

Version 12 - Update vom 18.4.2019 nur ab Core128!
PHP 7.2.17
libopenjpeg-2.3.0
imagemagick-7.0.8-28
icu 63.1
OpenSSL 1.1.1b
glibc 2.29
mit GCC 8.3 kompiliert

Die brotli compression ist auch für das IPfire WebUI aktiviert.
Wer das nicht will/möchte/braucht, kann einfach unter /etc/httpd/conf/conf.d die brotli.conf und die expires.conf löschen.
Die Status RRD-Bilder (z.B. CPU Nutzung) sind von brotli und der expires Konfiguration ausgenommen.
Mit Firefox 63.0.x+ geht jetzt TLSv1.3 (Apache 2.4.39 und OpenSSL 1.1.1 machen es möglich)

Bugs, Rückmeldungen und Fragen einfach hier im Thread.

Grüße, gocart
Last edited by gocart on July 9th, 2019, 3:25 pm, edited 66 times in total.

Meiffe
Posts: 3
Joined: June 8th, 2013, 8:19 am

Re: PHP 7.1.14 und Apache mit HTTP/2 Support für IPFire Download

Post by Meiffe » February 18th, 2018, 9:51 am

Hallo,

bei mir existieren die folgenden Dateien nicht und Apache startet nicht mehr, wenn ich den o.g. Anweisungen folge.
webapps-rsa.key
webapps-rsa.crt
webapps-ecdsa.key
webapps-ecdsa.crt

Wie werden diese erstellt/generiert?

Meiffe

sammydk
Posts: 768
Joined: July 8th, 2012, 2:50 pm
Location: NRW

Re: PHP 7.1.14 und Apache mit HTTP/2 Support für IPFire Download

Post by sammydk » February 18th, 2018, 4:48 pm

Hallo, bei mir hat das Install-Script einwandfrei funktioniert, auf meinem Testsystem.
Da ich auf der IPFIRE eine Webseite für WOL ohne Zugriffsrechte von USERN benötige, jeder User kann was lokal aufwecken z.B. über VPN, wenn er die Seite aufruft. Ohne PHP in core 118 war ich erst mal aufgeschmissen.
Nun bekomme ich Teile meiner PHP Seite wieder angezeigt, ander Teile stellt er wie im script dar.
Schein so als ob die Syntax sich an einigen Punkten verändert hat.
Ich bin kein Profi was PHP betrifft und hatte mir mal eine PHP Script zusammengebastelt.
Nun muss ich mal sehen wo das Problem liegt.

Installation, alles TOP.
Besten Dank
Gruß Dietmar
@ HOME 150 MBit Down/ 10 MBit Up by UM IPv4 ;-)
Image
Testsystem
Image

bschluff
Posts: 30
Joined: August 17th, 2010, 6:47 pm

Re: PHP 7.1.14 und Apache mit HTTP/2 Support für IPFire Download

Post by bschluff » February 18th, 2018, 8:36 pm

Hallo gocart

dem Dank kann ich mich anschließen. Für eine einwandfreie installation des "großen" Paketes benötigte ich ein installiertes Core 118.
Es hat alles einwandfrei funktioniert. Auch konnte ich einen mysqldump meiner "alten" 7er ownclud wieder in die mariadb einspielen.
Allerdings habe ich in der my.conf die folgenden Parameter anpasst, damit ein zurückspielen (Backup) funktioniert hat:

innodb_puffer_pool_size 100m
innodb_log_file_size 20m
innodb_log_buffer_size 80m

Die Daten aus der alten installation möchte ich ja irgendwie schon mitnehmen,,,,Termine, User, Adressbücher etc......
Auf die Installation von phpmyadmin habe ich allerdings verzichtet, Ich nehme an das daher die Verzeichnisse

/etc/httpd/conf/apps.d
/var/www/html/

nicht erstellt wurden.
phpmyadmin benötige ich m.E. ja eigentlich nicht, da das ja auch auf der Kommandozeile zu erledigen ist.....so zumindest meine Denke.

Die neuste owncloud habe ich nach /srv/web/ownclud geschoben (sie könnte natürlich auch irgendwo anders liegen) und eine entsprechende owncloud.conf in /etc/https/conf.d/vhosts gestellt, die auf die (selbst erstellten) Zertifikate und das DocumentRoot der owncloud zeigt.

Das selbst erstelte Zertifikat bittet im Browser auch brav um Bestätigung, aber dann sehe ich den reinen "text"code der index.php und nicht den "processed" php. Es scheint das apache in meiner Vorgehensweise nichts von der Existenz von php weiß.

Hast Du eine Idee was ich einstellen muss, damit apache php auch ausführt?

Danke
Bodo

User avatar
gocart
Posts: 556
Joined: December 16th, 2013, 4:43 pm
Location: Germany

Re: PHP 7.1.14 und Apache mit HTTP/2 Support für IPFire Download

Post by gocart » February 19th, 2018, 6:43 am

@sammydk: Ja der Syntax hat sich an eineigen Stellen von PHP 5.3 zu PHP 7.1 geändert. Bei PHP 7.2 Gibt es dann wieder Änderungen aber nicht mehr so dramatische. Ich bin auch kein PHP Experte und benutze es nur.

@Meiffe Das ist noch so ein kleine Schwachstelle im Script. Die macht ursprünglich der Mailserver Installer von dem das abgleitet ist bzw. werden sie alternativ mit der Installation von phpmyadmin bzw. Nextcloud erstellt. Der Code dafür ist in der Install.sh von phpmyadmin. Werde das mal noch mit einbauen.

@bschluff Bitte prüf mal ob der fpm Daemon gestartet ist. Erst die Installation vom phpmyadmin erzeugt die Autostart Links. Ansonstren geht "service php-fpm start" zum testen. Das Konzept war, dass erst die Webapps den Autostart des Daemons aktivieren und die Konfig Ordner erstellen. Vorschlag Mach am best doch mal phpmyadmin drauf. Kann auch eine Testinstallation sein. Dann hast du eine laufende Webseite zu testen und schauen. Wichtig ist auch die meine Webapps.conf unter vhosts.d. Ps. Freut mich zu hören, dass du doch deine Daten rüber bekommst :)

Grüße, gocart
Last edited by gocart on November 22nd, 2018, 10:56 am, edited 1 time in total.

5p9
Mentor
Mentor
Posts: 1860
Joined: May 1st, 2011, 3:27 pm

Re: PHP 7.1.14 und Apache mit HTTP/2 Support für IPFire Download

Post by 5p9 » February 22nd, 2018, 10:54 pm

Hey gocart,

wow! Liest sich soweit ja gut. Geile Arbeit! Mir stellt sich nun die Frage nachdem ich diesen Post gelesen habe:

https://planet.ipfire.org/post/ipfire-2 ... most-there

was ist mit dem smtp-proxy. Seit meinem letzten Versuch von der 111er weg zu kommen, der ja leider gescheitert war bin ich wegen anderen Projekten hier nicht auf die 117er Code gekommen. So und nun ist die 119er da im Testing und die 120er schon vorbereitet.

PHP war da ja glaube ich nichts dabei im mp enthalten. Nur Perl,oder?
Sorry wenn ich jetzt so blöd Frage,aber ich hab noch weniger Zeit für die Fire als sonst so i.M. :-[

VG,5p9
Mail Gateway: mail proxy

Image

Image

User avatar
gocart
Posts: 556
Joined: December 16th, 2013, 4:43 pm
Location: Germany

Re: PHP 7.1.14 und Apache mit HTTP/2 Support für IPFire Download

Post by gocart » February 23rd, 2018, 11:36 am

@5p9
was ist mit dem smtp-proxy. Seit meinem letzten Versuch von der 111er weg zu kommen, der ja leider gescheitert war bin ich wegen anderen Projekten hier nicht auf die 117er Code gekommen. So und nun ist die 119er da im Testing und die 120er schon vorbereitet.
Für den Mail Gateway/Proxy wird kein PHP benötigt. Amavisd ist eine Perl Anwendung, daher ist das da mit drin... Es ist alles mir dem aktuellen Core 118 lauffähig. Ps. Warum zeihst du nicht eine zweites IPfire nebenher hoch und richtest das das fertig ein prüfst es und macht dann einen schnellen switch. In virtualisierten Umgebungen ist das doch kein Ast mehr heute.
Grüße, gocart

5p9
Mentor
Mentor
Posts: 1860
Joined: May 1st, 2011, 3:27 pm

Re: PHP 7.1.14 und Apache mit HTTP/2 Support für IPFire Download

Post by 5p9 » February 23rd, 2018, 1:21 pm

Hallöchen :)
Für den Mail Gateway/Proxy wird kein PHP benötigt.

Yo, das habe ich auch noch so im Kopf gehabt, war mir nur nicht mehr sicher.
Ps. Warum zeihst du nicht eine zweites IPfire nebenher hoch und richtest das das fertig ein prüfst es und macht dann einen schnellen switch. In virtualisierten Umgebungen ist das doch kein Ast mehr heute.
Ja soweit nicht. Nur die Zeit ist im Moment nicht da - Umsetellung auf VOIP unserer Telefonanlage, dann Firmenumzug, Nextcloud auf 13 heben inkl. DB und Nginx- und redis Cache Umstellung usw. stehen grad an. Bin grad landunter :(

VG; 5p9
Mail Gateway: mail proxy

Image

Image

bschluff
Posts: 30
Joined: August 17th, 2010, 6:47 pm

Re: PHP 7.1.14 und Apache mit HTTP/2 Support für IPFire Download

Post by bschluff » February 26th, 2018, 8:27 am

Hallo gocart,

gestern hatte ich wieder ein wenig Zeit um mich wieder an die Owncloud zu setzen.
Vorab: sie läuft wieder mit Core 118 -> Danke für Deine Arbeit!

Nach dem installieren von phpmyadmin habe ich in den dann enstehenden apache config Files gesehen, wie das weiterleiten an den php-frm daemon funktioniert.

Die Migration der Daten aus der alten owncloud Installation war mit einem "mysqldump" nicht möglich, weil der Sprung über mehrere Major Releases nicht möglich ist und mit php7 ist ein Betrieb von owncloud 8.0 ebenfalls nicht möglich. Also blieb mir nur der Weg über das einzelne exportieren der vCards und der ics Dateien jeden einzelnen Benutzers übrig. Diese ließen sich aber dann in die neue Installation fast problemlos importieren.

Wie könnte es weiter gehen, damit auch andere von dieser Arbeit profitieren? Falls es das soll...

Ich weiß das es von der reinen "Lehre" abweicht, aber für mich und meine Familie ist die "Kombi" eine tolle Sache, die es so einfach nicht gibt. Ich kann Inhalte filtern, Fileservices nutzen und mich soweit wie möglich von Datenkraken fern halten indem das Adressbuch und Termine auch auf der Kiste laufen....

Gruß
Bodo

5p9
Mentor
Mentor
Posts: 1860
Joined: May 1st, 2011, 3:27 pm

Re: PHP 7.1.14 und Apache mit HTTP/2 Support für IPFire Download

Post by 5p9 » February 26th, 2018, 7:05 pm

Hi,

hier nur ein paar Gedanken von mir, die hier ggf. auch falsch platziert sein könnten (eigener Thread?).

Jedoch zu diesem Punkt etwas:
Die Migration der Daten aus der alten owncloud Installation war mit einem "mysqldump" nicht möglich, weil der Sprung über mehrere Major Releases nicht möglich ist und mit php7 ist ein Betrieb von owncloud 8.0 ebenfalls nicht möglich.
Das trifft immer zu wenn du Owncloud/ nextcloud migrieren willst! Was aber auf jedenfall wichtig ist, die benötigten Komponenten sollten immer uptodate sein, gerade wenn es sicherheitspatches gibt bei Owncloud, php, apache/nginx usw. Kommt jetzt darauf an wo deine schmerzempfinden liegt da du jetzt sehr abhängig von gocart's geiler Arbeit bist ;)
Mein Gedanke - migration auf ein anders System und diese bei Bedarf in die DMZ legen. - Nur mein Gedanke -
Ich weiß das es von der reinen "Lehre" abweicht, aber für mich und meine Familie ist die "Kombi" eine tolle Sache, die es so einfach nicht gibt. Ich kann Inhalte filtern, Fileservices nutzen und mich soweit wie möglich von Datenkraken fern halten indem das Adressbuch und Termine auch auf der Kiste laufen....
das Problem ist nun wenn die Entwicklung der PHP-Komponenten eingestellt wird oder auf onhold liegt, du jedoch IPFire fleißig aktualisierst, könnte es zu einem "möglichen" Problem kommen. Liegt halt an dem OwnCloud- & PHP-Eigenschaften/Abhängigkeiten die bei jedem Aktualisieren entstehen könnten.

Aber du kannst die Datenkraken auch hinter deiner Firewall stark unterbinden. Somit wärst du nicht gezwungen OwnCloud und PHP auf der IPFire laufen zu lassen. Es gibt schon günstige Hardware die dir NextCloud/ OwnCloud als Serversystem dienen könnten, z.B. RasperryPi, alter PC, oder oder oder.

Wie gesagt, ich will dir nur weitere Möglichkeiten geben die du machen könntest.

VG, 5p9
Mail Gateway: mail proxy

Image

Image

User avatar
gocart
Posts: 556
Joined: December 16th, 2013, 4:43 pm
Location: Germany

Re: PHP 7.1.14 und Apache mit HTTP/2 Support für IPFire Download

Post by gocart » May 2nd, 2018, 2:00 pm

Hallo @all

Habe die zweite Version online gestellt. Das Update auf PHP 7.2.8. Installation nur mit Core 120 (wegen OpenSSL Update). Die Libs sind alle mit auf den aktuellen Stand gehoben. MariaDB 10.2.14 mit OpenSSL 1.1.x Support sowie phpmyAdmin 4.8.2 sehen auch hier zur Verfügung. Beim händischen Einzelupdate die php-addons nicht vergessen...
Kommt jetzt darauf an wo deine Schmerzempfinden liegt da du jetzt sehr abhängig von gocart's geiler Arbeit bist
Da geb ich 5p9 sicherlich recht mit der Abhängigkeit. Ich bin einzige der der in der Richtung was macht.
Mein Gedanke - migration auf ein anders System und diese bei Bedarf in die DMZ legen. - Nur mein Gedanke
Die Option mit dem Separaten System macht duchaus Sinn. Ist aber wieder eine Büchse mehr die man warten muss.
Wie könnte es weiter gehen, damit auch andere von dieser Arbeit profitieren? Falls es das soll...
Ich mach das hier auf unbestimmte Zeit erst mal weiter und andere können und sollen selbstverständlich davon profitieren. Nutze das alles selbst. Sämtliche LFS- und Konfigfiles stehen im IPfire Git öffentlich zur Verfügung.

ps. Eventuelle Perl Language Fehlermeldungen können ignoriert werden...
ps2. Es gibt auch bald ein Mail Gateway und Server Update. Jetzt wo Core 120 released ist...

Grüße gocart
Last edited by gocart on September 6th, 2018, 4:00 pm, edited 4 times in total.

Smooky
Posts: 54
Joined: October 10th, 2009, 2:14 pm

Re: PHP 7.2.4 und Apache mit HTTP/2 Support für IPFire Download

Post by Smooky » May 2nd, 2018, 4:33 pm

Moin gocart.
Ich mach das hier auf unbestimmte Zeit erst mal weiter und andere können und sollen selbstverständlich davon profitieren
Danke dafür. Läuft wie die Vorgängerversion astrein.

LG

Smooky
Image
Image
Image

User avatar
gocart
Posts: 556
Joined: December 16th, 2013, 4:43 pm
Location: Germany

Re: PHP 7.2.6 und Apache mit HTTP/2 Support für IPFire Download

Post by gocart » June 3rd, 2018, 11:05 am

Hallo @all

Ein kleines Update auf PHP 7.2.6.

Grüße, gocart

Smooky
Posts: 54
Joined: October 10th, 2009, 2:14 pm

Re: PHP 7.2.7 und Apache mit HTTP/2 Support für IPFire Download

Post by Smooky » August 3rd, 2018, 1:42 pm

Moinsen gocart.

ist das ganze schon ready für Core 122 i586 ?

LG

Marcel
Image
Image
Image

User avatar
gocart
Posts: 556
Joined: December 16th, 2013, 4:43 pm
Location: Germany

Re: PHP 7.2.8 und Apache mit HTTP/2 Support für IPFire Download

Post by gocart » August 4th, 2018, 6:12 am

Hallo @all

kleines Update auf PHP 7.2.8 und für Core 122. + Nextcloud 13.0.5

Grüße, gocart

Post Reply