In wenigen Minuten könnt ihr einen eigenen Apache Webserver mit PHP und MySQL Datenbank installieren. So könnt ihr z.B. Zuhause einen eigenen, lokalen Webserver betreiben, um Projekte zu testen. Diese Anleitung ist auch für alle bisherigen, späteren Ubuntu Versionen gültig.
Bitte beachtet dazu meine neuen Beiträge:
- Apache2 Installation unter Ubuntu 14.04 und VirtualHost Konfiguration
- Apache2: PHP und MySQL Server installieren unter Ubuntu 14.04
- Apache2: Verschlüsselte Verbindungen ermöglichen (SSL)
Die folgende Anleitung ist möglicherweise nicht mehr aktuell
Zuerst benötigen wir ein Terminal mit Root-Rechten. Drückt STRG ALT T, um ein Terminal zu öffnen und gebt dann
sudo -s
ein. Bestätigt mit eurem Administratorpasswort. Das Terminal wird jetzt mit Root-Rechten ausgeführt, sodass wir alle folgenden Befehle eingeben können, ohne das lästige „sudo“ zu verwenden. Das macht die Arbeit einfacher ;)
Apache Server installieren
Als nächstes installieren wir unsere Basis, den Apache Webserver. Das geht ganz einfach und unkompliziert über den Befehl
apt-get install apache2
Bestätigt die Installation von Apache2 mit „J“. Die Installation sollte relativ zügig durchgeführt werden.
Sobald die Installation von Apache fertig ist, könnt ihr prüfen, ob der Webserver an sich schon funktioniert. Gebt in die Adressleiste eures Browsers „localhost“ ein. Wenn ihr dann die rechts stehende Nachricht zu sehen bekommt, funktioniert der Webserver.
Sollte der Server nicht funktionieren, hilft es vielleicht, wenn ihr versucht, den Server mit dem Befehl
service apache2 start
zu starten. Die (HTML/PHP-) Dateien, die später über den Browser aufgerufen werden sollen, liegen im Verzeichnis „/var/www/“. Dieses ist aber nur mit Root-Rechten beschreibbar, was im alltäglichen Gebrauch sehr unpraktisch ist. Deshalb ändern wir jetzt den Besitzer des Verzeichnisses „www“ mit diesem Befehl:
chown -R [BENUTZERNAME] /var/www
(Statt [BENUTZERNAME] muss natürlich der gewünschte, gültige Benutzernamen in Kleinbuchstaben eingetragen werden. Den aktuellen Benutzer erfahrt ihr durch den Befehl „id“. Damit nicht die ID von „root“ ausgegeben wird – ihr seid ja via sudo als root angemeldet – verlasst den sudo Modus vorübergehend via „exit“. Danach führt ihr „id“ aus und bekommt die ID zu eurem eigentlichen Nutzer. Dann wieder mit „sudo -s“ als root anmelden.).
Das www Verzeichnis ist nun für den aktuellen Benutzer voll zugänglich.
PHP Modul installieren
Um PHP, eine beliebte serverseitige Programmiersprache, auf dem Server einsetzen zu können, muss als nächstes das PHP Apache Modul installiert werden. Gebt dazu im Terminal folgenden Befehl ein:
apt-get install php5
Die Installation muss wieder mit „J“ bestätigt werden.
Nach der Installation muss der Apache Webserver noch mittels
service apache2 restart
neu gestartet werden, damit das neue PHP Modul erkannt und geladen wird. Nach dem Neustart werden Dateien mit der Endung .php vom PHP Interpreter erkannt und ausgeführt.
MySQL Installieren und Datenbank erstellen
Jetzt installieren wir die MySQL Datenbank, die von vielen Webapplikationen über PHP genutzt wird. (Forum, CMS)
Gebt diesen Befehl in euer Terminal ein:
apt-get install mysql-server
Gegen Ende der Installation werdet ihr aufgefordert, ein Passwort für den (Datenbank-)Benutzer „root“ zu vergeben.
Damit PHP mit dem MySQL Server kommunizieren kann, muss noch eine Verbindung zwischen beiden hergestellt werden. Das geht über die Installation des Pakets „php5-mysql“
apt-get install php5-mysql
Startet nach der Installation des Pakets den Apache Dienst über
service apache2 restart
neu, sodass die Änderungen übernommen werden.
Um eine neue Datenbank zu erstellen, loggt euch über
mysql -u root -p
und das vorher festgelegte Passwort in den MySQL Datenbankserver ein. Ihr befindet euch jetzt in der MySQL Befehlszeile. Mit
create database DATENBANKNAME;
legt ihr eine neue Datebank an, die später von PHP genutz werden kann. (Semikolon nicht vergessen!). Benutzername der Datenbank ist „root“; das Passwort ist das zuvor gewählte.
Die erstellten Datenbanken lassen sich über
drop database DATENBANKNAME;
löschen. Im Allgemeinen werden in der MySQL Befehlszeile die üblichen MySQL Befehle genutzt. Mit „exit“ verlasst ihr die MySQL Befehlszeile wieder und kehrt zur normalen Shell zurück
Den Webserver steuern
Den Apache Webserver könnt ihr über die Befehle
service apache2 start service apache2 restart service apache2 stop
starten, neu starten und stoppen. Denkt daran, dass ihr für diese Befehle Root-Rechte benötigt. Führt sie also in einem Root-Terminal aus oder stellt den Befehlen ein „sudo“ voran.
Der Webserver startet übrigens beim Start von Ubuntu selbstständig und muss nicht erst von Hand gestartet werden.
Euer einfacher Webserver ist jetzt fertig eingerichtet und beherrscht schon die Grundlagen, sodass einfache Anwendung funktionieren. Wer seinen Server noch für verschlüsselte Verbindungen per SSL fit machen will, kann sich diesen Post mal anschauen: SSL Verschlüsselung für Apache
Ich möchte meinen Benutzername wissen, also gebe ich „id“ ein.
Das nächste was erscheint ist „uid=1000(felix) gid=1000(felix) Gruppen=1000(felix)“ Es folgen noch ein paar weitere Buchstaben und Zahlen danach, die aber mir aber nicht helfen.
OK, ich gehe aus das „felix“ mein Benutzername ist, aber wenn ich „Chown -R [felix] /var/www“ eingebe dann bekomme ich diesen Text: „chown: ungültiger Benutzer: [Felix)““
Freue mich über eine schnelle Antwort,
Danke
https://legacy.thomas-leister.de
Hi,
du musst den Benutzernamen selbstverständlich ohne eckige Klammern angeben ;) Dann sollte es funktionieren.
LG Thomas
Habe ich auch gemerkt :(
Das war peinlich :$
Hi,
bei mir kommt folgende Fehlermeldung:
“
root@Polynesia:~# service apache2 start
* Starting web server apache2 apache2: Syntax error on line 263 of /etc/apache2/apache2.conf: Could not open configuration file /etc/apache2/sites-enabled/phpbb: No such file or directory
Action ’start‘ failed.
The Apache error log may have more information.
[fail]
Was hat das zu bedeuten?
MfG
Matthias
https://legacy.thomas-leister.de
Hi Matthias,
es sieht ganz so aus, als hättest du in deiner VirtualHost Konfiguration einen falschen Pfad unter DocumentRoot angegeben. (evtl „/phpbb“?)
Der Pfad zum phpbb root muss immer absolut angegeben werden z.B. /var/www/phpbb
Der phpbb ordner muss in /var/www liegen bzw einem Unterordner liegen.
LG Thomas
Hallo,
wenn ich mysql installiere bekkomm ich immer den error mysql passwort konnte nicht gesetzt werden schon 30 mal neuaufgesetzt
Klasse Anleitung, vilen dank schon mal dafür. Zu meinem Problem:
Wenn ich MySQL installiere, bekomme ich immer den Error: mysql passwort konnte nicht gesetzt werden..
hast du da einen tipp? Ich habe ubuntu server auf BananaPi laufen.
LG Timm
Moinsen …
bekomme leider nen 502-Fehler beim Apache auf Ubuntu 12.04 mit Plesk .. ich finde den Fehler einfach nicht :(
Super-Anleitung, danke, bei mir hats geklappt!
Danke. Geht prima.
http://Gutes-Deutsch.de
Vielen Dank! Bei Nennung der Kontonummer gebe ich gern eine kleine Spende. Ich hielt es schon für unmöglich, von meinem Ubuntu-System ausgehend eine Windows-Datenbank zu bearbeiten, so wie es mir unmöglich ist, mit Ubuntu auf meinen HP-LaserJet-Professional-P-1102w zu drucken. Auch für die Lösung dieses zweiten Problems hätte ich etwas übrig.
Hallo,
danke für die Anleitung :). Sie hat leider einen Logikfehler. Dein erster guter Tipp ist im Terminal den Root Benutzer als Standard benutzer zu definieren damit man nicht immer das sudo schreiben muss. Später gibst du nebenbei den Tipp das man mittels ip den Benutzer raus finden kann. Da der Root jedoch als Benutzer aktiv ist, wird dieser ausgegeben. Der Tipp den Benutzer mittels ip heraus zu finden wird somit immer zu dem Ergebnis führen das root der Benutzer ist.
Gruß
https://legacy.thomas-leister.de
Danke für den Hinweis! Ist korrigiert :)
LG Thomas
Hat 100 %ig geklappt. Danke für diese kurze und präzise Beschreibung.
Jetzt fehlt mir nur noch Tomcat…
Klasse Anleitung, vilen dank schon mal dafür. Zu meinem Problem:
Wenn ich MySQL installiere, bekomme ich immer den Error: mysql passwort konnte nicht gesetzt werden..
hast du da einen tipp? Ich habe ubuntu server auf BananaPi laufen.
LG Timm
Hallo Thomas,
ist es notwendig den apache zwei mal neu zu starten?
Also Installation von php, dann Neustart, dann Installation mysql, Neustart – und falls ja, warum?
Reicht es nicht aus php und dann mysql zu installieren und dann einen Neustart zu machen?
Oder apache einfach als letztes installieren und dann kommt man ohne Neustart aus?
Das kam mir einfach nur so in den Sinn.
LG Martin
Super Anleitung,
für „apt-get install php5-mysql“ habe ich „apt-get install phpmyadmin“ eingegeben, damit habe ich sofort den connect zu allen projekten in /var/www/html…
LG
Uli