Ubuntu MATE (Apache)
Beschreibung
Der Apache HTTP Server ist der wohl weltweit am meisten verwendete Webserver. Er gehört zur Apache Software Foundation und ist sowohl quelloffen als auch kostenfrei. Durch die Arbeit vieler Entwickler kann der Apache Server um unzählige Module erweitert werden. Vor allem bei SEOs ist der Apache HTTP Server wegen des Moduls mod_rewrite beliebt.
Installation
Apache2
Der Apache2 Webserver ist auf Ubuntu MATE 16.04.1 LTS nicht vorinstalliert.
Dienst
Der Apache2-Dienst kann mit folgendem Befehl neu gestartet werden (start|stop|graceful-stop|restart|reload|force-reload).
Installation
Der Apache2 Webserver kann mit folgendem Befehl installiert werden.
Die serverseitige Skriptsprache PHP kann mit diesen Befehlen dazu installiert werden.
Firewall
Der Apache2-Dienst ist bei der Firewall standardmäßig aktiviert, deshalb muss er nicht extra freigeschaltet werden. Ob die Firewall den Apache2-Dienst blockiert kann getestet werden, indem man die Firewall kurzzeitig deaktiviert.
Eine Firewall sollte unbedingt laufen, wenn der Server nicht in der Demilitarized Zone (DMZ) steht.
Konfiguration
Hier das Beispiel, wie das TechnikWiki auf dem lokalen Server (Laptop) läuft. Dieser wird für die Programmierung und für die Tests benötigt. Zusätzlich zum Webserver wird die serverseitige Skriptsprache PHP und die Datenbank MySQL verwendet.
Verzeichnisstruktur
Die benötigte Verzeichnisstruktur wird mit folgenden Befehlen angelegt.
Konfiguration
Die Konfigurationsmöglichkeiten von dem Apache2 sind enorm. Man kann damit ein eigenes Wiki füllen, deshalb wird hier nur ein Beispiel angegeben.
Als erstes muss eine symbolische Verknüpfung angelegt werden.
Anschließend wird die Konfigurationsdatei gesichert und ein neuer VirtualHost (technikwiki.conf) erstellt.
Jetzt kann man bereits testen, ob der Webserver läuft.
Nun noch im Browser einfach "localhost" aufrufen und die " Default Page" erscheint.
VirtualHost
Soll die Webseite nicht nur mit "localhost" sondern auch wie in diesem Beispiel mit z. B. "technikwiki" aufgerufen werden, muss in der Datei " /etc/hosts" folgender Eintrag ergänzt werden.
127.0.0.1 technikwiki
Nun muss der VirtualHost in der Datei " technikwiki.conf" konfiguriert werden. Nahezu alle Parameter von den Konfigurationsdateien "apache2.conf" und "php.ini" können in dieser überschrieben werden.
# 02.12.2017 Oliver Bacher (www.technikwiki.org) # <VirtualHost technikwiki:80> # The ServerName directive sets the request scheme, hostname and port that # the server uses to identify itself. This is used when creating # redirection URLs. In the context of virtual hosts, the ServerName # specifies what hostname must appear in the request's Host: header to # match this virtual host. For the default virtual host (this file) this # value is not decisive as it is used as a last resort host regardless. # However, you must set it for any further virtual host explicitly. ServerName technikwiki ServerAdmin administrator@technikwiki.org DocumentRoot /www/htdocs <Directory /www/htdocs> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory> # Available loglevels: trace8, ..., trace1, debug, info, notice, warn, # error, crit, alert, emerg. # It is also possible to configure the loglevel for particular # modules, e.g. #LogLevel info ssl:warn ErrorLog /www/log/error.log CustomLog /www/log/access.log combined # For most configuration files from conf-available/, which are # enabled or disabled at a global level, it is possible to # include a line for only one particular virtual host. For example the # following line enables the CGI configuration for this host only # after it has been globally disabled with "a2disconf". #Include conf-available/serve-cgi-bin.conf # The configuration for PHP php_value session.save_path /www/tmp/sessions php_value max_execution_time 120 php_value display_errors 0 php_value display_startup_errors 0 php_value log_errors 1 php_value memory_limit 64M # The alias for css directory (example / disabled) #Alias /css "/www/css" #<Directory "/www/css"> # Options None # AllowOverride None # Order allow,deny # Allow from all #</Directory> </VirtualHost>
Test
Nun kann der Apache2 Webserver mit dem Modul PHP getestet werden. Mit diesem Befehl kann man feststellen ob der Apache2 läuft.
Anschließend einfach folgende Dateien "index.html" und "phpinfo.php" im Verzeichnis "/www/htdocs" erstellen.
<html> <head> <title>TechnikWiki</title> </head> <body> Hello TechnikWiki! </body> </html>
<?php phpinfo(); ?>