tachtler:apache_http_server_centos_7
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
tachtler:apache_http_server_centos_7 [2014/11/25 14:46] – klaus | tachtler:apache_http_server_centos_7 [2019/01/24 17:52] (aktuell) – [/etc/httpd/conf/httpd.conf] klaus | ||
---|---|---|---|
Zeile 633: | Zeile 633: | ||
# systemctl is-enabled httpd.service | # systemctl is-enabled httpd.service | ||
enabled | enabled | ||
+ | </ | ||
+ | |||
+ | :!: **HINWEIS** - **Falls der [[http:// | ||
+ | <code apache> | ||
+ | ... httpd: (99)Cannot assign requested address: AH00072: make_sock: could not bind to address ... | ||
+ | </ | ||
+ | **beim automatischen __Systemstart__, | ||
+ | |||
+ | Zuerst sollte die Konfiguration des '' | ||
+ | < | ||
+ | # cp -a / | ||
+ | </ | ||
+ | |||
+ | Anschließend kann der Inhalt der Konfigurationsdatei | ||
+ | * ''/ | ||
+ | wie nachfolgend dargestellt angepasst werden: | ||
+ | < | ||
+ | [Unit] | ||
+ | Description=The Apache HTTP Server | ||
+ | After=network.target network-online.target remote-fs.target nss-lookup.target | ||
+ | Documentation=man: | ||
+ | Documentation=man: | ||
+ | |||
+ | [Service] | ||
+ | Type=notify | ||
+ | EnvironmentFile=/ | ||
+ | ExecStart=/ | ||
+ | ExecReload=/ | ||
+ | ExecStop=/ | ||
+ | # We want systemd to give httpd some time to finish gracefully, but still want | ||
+ | # it to kill httpd after TimeoutStopSec if something went wrong during the | ||
+ | # graceful stop. Normally, Systemd sends SIGTERM signal right after the | ||
+ | # ExecStop, which would kill httpd. We are sending useless SIGCONT here to give | ||
+ | # httpd time to finish. | ||
+ | KillSignal=SIGCONT | ||
+ | PrivateTmp=true | ||
+ | |||
+ | [Install] | ||
+ | WantedBy=multi-user.target | ||
+ | </ | ||
+ | |||
+ | **__Anpassung__**: | ||
+ | |||
+ | * < | ||
+ | |||
+ | Ergänzung der Zeile um **'' | ||
+ | |||
+ | Abschließend **müssen** die Änderungen noch __aktiviert__ werden, wozu nachfolgender Befehl genutzt werden kann: | ||
+ | < | ||
+ | # systemctl daemon-reload | ||
</ | </ | ||
Zeile 922: | Zeile 972: | ||
# | # | ||
#Listen 12.34.56.78: | #Listen 12.34.56.78: | ||
- | Listen 80 | + | # Tachtler |
+ | # default: | ||
+ | Listen 192.168.0.90: | ||
+ | Listen 192.168.1.90: | ||
# | # | ||
Zeile 1098: | Zeile 1151: | ||
LogFormat "%h %l %u %t \" | LogFormat "%h %l %u %t \" | ||
LogFormat " | LogFormat " | ||
+ | </ | ||
# | # | ||
Zeile 1256: | Zeile 1310: | ||
**__Erklärungen__**: | **__Erklärungen__**: | ||
+ | |||
+ | === Listen === | ||
+ | |||
+ | Setzen der IP-Adressen und des jeweiligen Ports, auf denen der [[http:// | ||
+ | |||
+ | <code apache> | ||
+ | # Tachtler | ||
+ | # default: Listen 80 | ||
+ | Listen 192.168.0.90: | ||
+ | Listen 192.168.1.90: | ||
+ | </ | ||
=== ServerAdmin === | === ServerAdmin === | ||
Zeile 1277: | Zeile 1342: | ||
=== DirectoryIndex === | === DirectoryIndex === | ||
- | Festlegen der Dateien, welche vom [[http:// | + | Festlegen der Dateien, welche vom [[http:// |
<code apache > | <code apache > | ||
< | < | ||
Zeile 2614: | Zeile 2679: | ||
# LoadModule socache_dbm_module modules/ | # LoadModule socache_dbm_module modules/ | ||
LoadModule socache_memcache_module modules/ | LoadModule socache_memcache_module modules/ | ||
- | # LoadModule socache_shmcb_module modules/ | + | LoadModule socache_shmcb_module modules/ |
LoadModule status_module modules/ | LoadModule status_module modules/ | ||
# LoadModule substitute_module modules/ | # LoadModule substitute_module modules/ | ||
Zeile 2797: | Zeile 2862: | ||
</ | </ | ||
+ | |||
+ | ===== Virtuelle Hosts ===== | ||
+ | |||
+ | Virtuelle Hosts gibt es in zwei Ausprägungen: | ||
+ | - IP-basierte virtuelle Hosts (jeder virtuelle Host benötigt eine eigene IP-Adresse) | ||
+ | - Namens-basierte virtuelle Hosts (mehrere virtuelle Hosts **teilen** sich die gleiche IP-Adresse) | ||
+ | |||
+ | IP-basierte virtuelle Hosts verwenden die IP-Adresse der Verbindung, um den korrekten virtuellen Host zur Bedienung einer Anfrage zu ermitteln. Folglich wird eine eigene IP-Adresse für jeden virtuellen Host benötigt. | ||
+ | |||
+ | Bei der Verwendung von namensbasierten virtuellen Hosts verlässt sich der Server darauf, dass der Client den Hostnamen als Bestandteil der HTTP-Header angibt. Durch Anwendung dieser Technik, können sich mehrere verschiedene Hosts die gleiche IP-Adresse teilen. | ||
+ | |||
+ | Nachfolgend soll deshalb ein Beispiel für die Erstellung eines **namensbasierten Hosts** konfiguriert werden. | ||
+ | |||
+ | <code apache> | ||
+ | # | ||
+ | # httpd.tachtler.net (Apache HTTP Server-Status/ | ||
+ | # | ||
+ | < | ||
+ | ServerAdmin webmaster@tachtler.net | ||
+ | ServerName httpd.tachtler.net | ||
+ | ServerAlias www.httpd.tachtler.net | ||
+ | ServerPath / | ||
+ | DocumentRoot "/ | ||
+ | < | ||
+ | Options -Indexes +FollowSymLinks | ||
+ | # Tachtler (enable for .htaccess file support) | ||
+ | # AllowOverride AuthConfig | ||
+ | AllowOverride None | ||
+ | # Tachtler (enable for unlimited access) | ||
+ | Require all granted | ||
+ | # Tachtler (enable for restricted access) | ||
+ | # Allow access from localhost, edmz, idmz, home | ||
+ | # Require ip 127.0.0.1/8 192.168.1.0/ | ||
+ | |||
+ | # Rewrite the requestet URI, when following query was | ||
+ | # NOT set to --> / | ||
+ | RewriteEngine on | ||
+ | RewriteBase / | ||
+ | RewriteRule ^$ %{REQUEST_URI}server-status [R=301,L] | ||
+ | |||
+ | </ | ||
+ | |||
+ | DirectoryIndex index.htm | ||
+ | |||
+ | ErrorLog logs/ | ||
+ | SetEnvIf X-Forwarded-For " | ||
+ | CustomLog logs/ | ||
+ | CustomLog logs/ | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | **__Erklärungen__**: | ||
+ | |||
+ | === VirtualHost === | ||
+ | |||
+ | Die Direktive ''< | ||
+ | |||
+ | === ServerAdmin === | ||
+ | |||
+ | Die Direktive '' | ||
+ | |||
+ | === ServerName === | ||
+ | |||
+ | Die Direktive '' | ||
+ | |||
+ | === ServerAlias === | ||
+ | |||
+ | Die Direktive '' | ||
+ | |||
+ | === ServerPath === | ||
+ | |||
+ | Die Direktive '' | ||
+ | |||
+ | :!: **HINWEIS** - Dient nur zur Kompatibilität zu antiquierten Clients! | ||
+ | |||
+ | === DocumentRoot === | ||
+ | |||
+ | Die Direktive '' | ||
+ | |||
+ | === Directory === | ||
+ | |||
+ | Die Direktive ''< | ||
+ | |||
+ | === Options === | ||
+ | |||
+ | Die Direktive '' | ||
+ | |||
+ | === AllowOverride === | ||
+ | |||
+ | Die Direktive '' | ||
+ | |||
+ | === Require === | ||
+ | |||
+ | Die Direktive '' | ||
+ | |||
+ | === Rewrite === | ||
+ | |||
+ | Die Direktiven | ||
+ | <code apache> | ||
+ | RewriteEngine on | ||
+ | RewriteBase / | ||
+ | RewriteRule ^$ %{REQUEST_URI}server-status [R=301,L] | ||
+ | </ | ||
+ | schreiben die eingegebene URL in der Form um, dass wenn die URL nicht die Zeichenfolge '' | ||
+ | |||
+ | === DirectoryIndex === | ||
+ | |||
+ | Die Direktive '' | ||
+ | |||
+ | === ErrorLog === | ||
+ | |||
+ | Die Direktive '' | ||
+ | |||
+ | === SetEnvIf | ||
+ | |||
+ | Die Direktive '' | ||
+ | |||
+ | === CustomLog === | ||
+ | |||
+ | Die Direktive '' | ||
+ | |||
+ | Wenn die Umgebungsvariable __nicht__ gesetzt ist, ist das Format hier dann '' | ||
+ | |||
+ | :!: **HINWEIS** - Die Log-Formate müssen vorher z.B. in der Konfigurationsdatei ''/ | ||
===== Abschließender Neustart ===== | ===== Abschließender Neustart ===== | ||
- | Bevor **__weitere__** | + | Nach Durchführung der vorhergehenden |
< | < | ||
# systemctl restart httpd.service | # systemctl restart httpd.service | ||
Zeile 2833: | Zeile 3022: | ||
| < | | < | ||
| < | | < | ||
- | |||
- | ===== Virtuelle Hosts ===== | ||
- | |||
- | Virtuelle Hosts gibt es in zwei Ausprägungen: | ||
- | - IP-basierte virtuelle Hosts (jeder virtuelle Host benötigt eine eigene IP-Adresse) | ||
- | - Namens-basierte virtuelle Hosts (mehrere virtuelle Hosts **teilen** sich die gleiche IP-Adresse) | ||
- | |||
- | IP-basierte virtuelle Hosts verwenden die IP-Adresse der Verbindung, um den korrekten virtuellen Host zur Bedienung einer Anfrage zu ermitteln. Folglich wird eine eigene IP-Adresse für jeden virtuellen Host benötigt. | ||
- | |||
- | Bei der Verwendung von namensbasierten virtuellen Hosts verläßt sich der Server darauf, dass der Client den Hostnamen als Bestandteil der HTTP-Header angibt. Durch Anwendung dieser Technik können sich mehrere verschiedene Hosts die gleiche IP-Adresse teilen. | ||
- | |||
- | Nachfolgend soll deshalb ein Beispiel für die Erstellung eines **namensbasierten Hosts** konfigureirt werden. | ||
- | |||
- | |||
- | |||
- | :!: FIXME **Hier geht es weiter...** FIXME :!: | ||
- | |||
- | |||
- | |||
tachtler/apache_http_server_centos_7.txt · Zuletzt geändert: 2019/01/24 17:52 von klaus