Wie fange ich an, httpd mit Socket-Aktivierung (systemd) zu verwenden?

14

Der Apache-HTTPD-Server wird auf einem unserer kleinen Server nur selten benötigt. Daher ist es hilfreich, ihn über die Socket-Aktivierung von systemd zu starten (und ihn später zu stoppen, wenn für einige Zeit kein Datenverkehr aufgetreten ist). Ist das möglich und wenn ja, wie?

Daniel
quelle
Das oben Gesagte wurde umformuliert, und die Bearbeitungszeit ist nach 5 Minuten abgelaufen. Die praktischen Wirkungen sind möglicherweise nicht nützlich. Ein Client muss eine Verbindung mit einem Startbefehl herstellen, bevor er normale Anforderungen stellt. Der Client weiß nicht im Voraus, ob httpd aktiv ist, daher muss der Startbefehl vor normalen Anforderungen gesendet werden. Die Verzögerung wird hoch sein. Im wirklichen Leben können die Spinnen und Bots der Welt den Apache immer aufrechterhalten. Die Frage könnte umformuliert werden, um Antworten wie "Verwenden Sie einen leichten HTTP-Server wie lighthttpd und lassen Sie ihn immer offen" zu erhalten.
Rleir

Antworten:

0

Datei:

httpd.socket

Inhalt:

[Socket]
ListenStream=80
ListenStream=0.0.0.0:80
#BindIPv6Only=ipv6-only
After=network.target
Requires=network.target

[Install]
WantedBy=sockets.target

Stellen Sie sicher, dass der Apache-Dienst auch httpd heißt.

dizzi90
quelle
Dies funktioniert nicht, da der Port nicht von httpd.socket an httpd.service weitergeleitet wird
Edward Torvalds