{"id":1938,"date":"2026-03-17T02:49:16","date_gmt":"2026-03-17T01:49:16","guid":{"rendered":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/?p=1938"},"modified":"2026-03-19T16:29:26","modified_gmt":"2026-03-19T15:29:26","slug":"jetzt-brauch-ich-doch-einen-lokalen-webserver-auf-linux-das-uebt","status":"publish","type":"post","link":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/2026\/03\/17\/jetzt-brauch-ich-doch-einen-lokalen-webserver-auf-linux-das-uebt\/","title":{"rendered":"Jetzt brauch ich doch einen lokalen Webserver auf Linux&#8230; das \u00fcbt!"},"content":{"rendered":"<h2>Das z\u00e4hlt unter &#8222;Finger\u00fcbung&#8220;: einmal Install mit HIndernissen<\/h2>\n<p>Ich gebe zu, ich dachte erstmal ich mach es mir bequem und nehme den guten alten Xampp. Ich brauche n\u00e4mlich doch einen lokalen Webserver, auch unter Linux. Warum? Als Testumgebung, weil man manche Sachen tunlichst nicht in der Produktivumgebung ausprobiert. Mein geliebtes Inselfisch-Kochbuch l\u00e4uft n\u00e4mlich seit dem vorletzten PHP-Update bei Strato nur noch mit der alten PHP-Version, und das ist erstens nicht sch\u00f6n und kostet zweitens eine monatliche Administrations-Geb\u00fchr, was mich anfuchst.<\/p>\n<p>Frisch ans Werk, gegooglet und installiert, Xampp gibts auch f\u00fcr Linux, da heisst er Lampp. Nachdem ich erst dachte dass der Installer sich aufgeh\u00e4ngt hat und nach etwas mehr googlen hab ich mich dann in Geduld ge\u00fcbt und den Installer eine halbe Stunde lang stehen lassen, dann ist er durchgelaufen. Und nachdem ich eine vorige nginx-Installation entfernt habe, die den Port 80 besetzte, liess sich auch der Apache starten!<\/p>\n<p>Na wunderbar, aber es nutzt mir so erstmal nix, weil die PHP Version (8.1.25) leider ziemlich veraltet ist. Na ja, ich h\u00e4tte ja auch beim googlen merken m\u00fcssen, dass Xampp insgesamt als\u00a0 veraltet zu werten ist&#8230; aber what shalls wie man auf neudeutsch sagt, schlie\u00dflich sollte es auf Linux auch ohne gehen, Apache und Co sind ja native Linux. Ich geh mal recherchieren und melde mich sp\u00e4ter wieder.<\/p>\n<h2>Neue Anforderung<\/h2>\n<p>So, jetzt bin ich wieder da, mit einer etwas genaueren Zieldefinition, die war n\u00e4mlich nicht ganz sauber. Also nochmal, mit etwas mehr Schmackes:<\/p>\n<p>1. das inselfisch-Kochbuch l\u00e4uft derzeit mit PHP 8.3.<\/p>\n<p>2. die neueste empfohlene PHP-Version bei Strato ist 8,4<\/p>\n<p>3.\u00a0 beim testweise umstellen auf 8.4 ist das inselfisch-Kochbuch nicht mehr gestartet, deshalb hab ich auf die alte PHP-Version zur\u00fcckgestellt und alles gelassen wie es war<\/p>\n<p>4. aus den FAQs bei Strato hab ich beim querlesen entnommen, dass das manuelle testweise umstellen der PHP Version auf dem Server eine eine etwas haarige Angelegenheit ist, die meine Linux-Kanntnisse deutich \u00fcbersteigt und einiges an Rechereche erfordert, z.B. wie man die .htaccess editiert. Ich habe auch was gelesen dass die manuell umgestellte PHP-Version nur solange g\u00fcltig bleibt wie die Benutzersession bei Strato nicht beendet wird, aber da muss ich echt nochmal nachlesen. Da sind meine Webserver-Kenntnisse echt nicht gut genug.<\/p>\n<p>Bei genauerer \u00dcberlegung stelle ich fest, dass ich eigentlich beide PHP-Versionen auf dem lokalen Webserver brauche, mit der M\u00f6glichkeit (&#8222;on the fly&#8220; w\u00e4re optimal) zwischen den Versionen umzuschalten. Ich redefiniere also mein Ziel. Und melde mich wieder ab zur neuen Recherche.<\/p>\n<h2>Apache intallieren<\/h2>\n<p>Der Webserver Apache l\u00e4sst sich komfortabel \u00fcber die Anwendungsverwaltung installieren, suche nach apache2. Gestartet und gestoppt wird er aus der Kommandozeile mit:<\/p>\n<pre>sudo service apache2 start<\/pre>\n<p>bzw:<\/p>\n<pre><code>sudo service apache2 stop<\/code><\/pre>\n<p>Zustand abfragen (erfordert Password), \u00fcberpr\u00fcfen ob der Server l\u00e4uft:<\/p>\n<pre>sudo systemctl status apache2\r\n\r\n<\/pre>\n<p>Apache neu starten<\/p>\n<pre>sudo systemctl restart apache2<\/pre>\n<h2>PHP Version installieren<\/h2>\n<pre>sudo apt install php8.3-cli<\/pre>\n<h2>Wenn der Browser kein PHP interpretiert<\/h2>\n<p>Das ist der Fall, wenn beim Aufruf von phpmyadmin der Sourcecode angezeigt wird.<br \/>\nOft ist PHP installiert, aber das Apache-Modul libapache2-mod-php fehlt.<\/p>\n<p>L\u00f6sung: Installieren Sie das Modul und aktivieren Sie es. \u00d6ffnen Sie das Terminal und geben Sie ein:<\/p>\n<pre>sudo apt update\r\nsudo apt install php libapache2-mod-php\r\nsudo a2enmod php8.x # Ersetzen Sie 8.x durch Ihre installierte Version (z.B. 8.3)\r\nsudo systemctl restart apache2\r\n\r\n<\/pre>\n<p>Wenns das noch immer nicht gewesen war: ein neues jungfr\u00e4uliches Profil in Firefox wirkt Wunder!<\/p>\n<h2>DB-Passwort und User nachtr\u00e4glich hinzuf\u00fcgen<\/h2>\n<p>Falls sie bei der Installation von MariaDB kein Passwort f\u00fcr ihren User vergeben haben, m\u00fcssen sie das noch nachholen<\/p>\n<pre>CREATE USER 'dbadmin'@'localhost' IDENTIFIED BY 'meinpasswort';\r\nGRANT ALL PRIVILEGES ON *.* TO 'dbadmin'@'localhost' WITH GRANT OPTION;\r\nFLUSH PRIVILEGES;<\/pre>\n<p>Dazu muss die Datenbank Console im Terminal als root gestartet werden.<\/p>\n<p>mysql -u root -p<\/p>\n<p>Ein paar wichtige Kommandos:<\/p>\n<pre>sudo systemctl start mysql\r\nsudo systemctl status mysql\r\nsudo systemctl stop mysql\r\nsudo systemctl restart mysql<\/pre>\n<h2>Haben wir jetzt einen funktionalen lokalen Webserver?<\/h2>\n<p>Das testen wir bei der n\u00e4chsten Session. Dann gehts &#8222;back to the roots&#8220;, wir installieren WordPress, aber diesmal unter Linux. Das wird spannend!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Das z\u00e4hlt unter &#8222;Finger\u00fcbung&#8220;: einmal Install mit HIndernissen Ich gebe zu, ich dachte erstmal ich mach es mir bequem und nehme den guten alten Xampp. Ich brauche n\u00e4mlich doch einen lokalen Webserver, auch unter Linux. Warum? Als Testumgebung, weil man manche Sachen tunlichst nicht in der Produktivumgebung ausprobiert. Mein geliebtes Inselfisch-Kochbuch l\u00e4uft n\u00e4mlich seit dem [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[67,7,4,2],"tags":[],"_links":{"self":[{"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/posts\/1938"}],"collection":[{"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/comments?post=1938"}],"version-history":[{"count":10,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/posts\/1938\/revisions"}],"predecessor-version":[{"id":1987,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/posts\/1938\/revisions\/1987"}],"wp:attachment":[{"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/media?parent=1938"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/categories?post=1938"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/evileu.de\/zum-schwarzen-pinguin\/wp-json\/wp\/v2\/tags?post=1938"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}