Ich hatte bis zum letzten Firmware-Update einen ReverseProxy auf dem Qhttpd eingerichtet.
Es war ein neuer Port angegeben, auf dem gelauscht wird und der https-Aufrufe an eine interne Adresse mit http weiterleitet.
Ziel war es, den im Container laufenden HomeAssistant-Service alternativ über https aufrufen zu können.
Die Konfig lief lange Zeit stabil - bis zum Firmware-Update. Ich vermute, dass das darin enthaltene Apache-Update etwas geändert hat.
Ich finde aber keine Möglichkeit, den Fehler zu identifizieren bzw. woran der Start des Qhttpd scheitert. Es wird keine Info ausgegeben oder ein Log geschrieben.
Daher meine bitte, die Konfigs kurz anzuschauen, ob euch daran etwas auffällt.
Gibt es neben dem Restart über das Skript auch andere Wege, den Apache zu starten incl. Fehlerausgaben?
Hier sind meine Anpassungen:
1) In den Einstellungen https aktiviert, Port gesetzt, VirtualHost aktiviert ohne Einträge.
2) /etc/config/apache/apache.conf
Folgende Zeile ergänzt:
Include /etc/config/apache/extra/httpd-vhosts-user.conf ist bereits enthalten durch Aktivierung der VirtualHosts
3) /etc/config/apache/extra/httpd-proxy.conf:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
4)/etc/config/apache/extra/httpd-proxy.conf (Domäne durch "domain" ersetzt):
Listen 8124
<VirtualHost _default_:80>
DocumentRoot "/share/Web"
</VirtualHost>
# https=>http
<VirtualHost *:8124>
ServerName domain.de
ProxyPreserveHost On
ProxyRequests Off
ProxyVia Off
SSLEngine on
SSLCertificateFile /mnt/HDA_ROOT/.config/QcloudSSLCertificate/cert/cert
SSLCertificateKeyFile /mnt/HDA_ROOT/.config/QcloudSSLCertificate/cert/key
ProxyPass /api/websocket ws://domain.de:8123/api/websocket
ProxyPassReverse /api/websocket ws://domain.de:8123/api/websocket
ProxyPass / http://domain.de:8123/
ProxyPassReverse / http://domain.de:8123/
RewriteEngine on
RewriteCond %{HTTP:Upgrade} =websocket [NC]
RewriteRule /(.*) ws://domain.de:8123/$1 [P,L]
RewriteCond %{HTTP:Upgrade} !=websocket [NC]
RewriteRule /(.*) http://domain.de:8123/$1 [P,L]
</VirtualHost>
Alles anzeigen
5) Restart des Apache:
/etc/init.d/Qthttpd.sh restart
Beim Restart wird nach Stoppen des Servers die Konfig zurückgesetzt.
D.h. die Webser-Einstellungen im NAS sind wieder initial (Original-Ports, kein https usw.). Alle Änderungen an der Konfig wird überschrieben.