Hallo, bin neu hier und hoffe ihr könnt mir helfen.
Ich habe Fhem auf dem Pi3 laufen und wollte das Tablet UI auf dem php Server im Pi laufen lassen.
Das Demo UI wird schon soweit angezeigt, allerdings bekomme ich folgenden Fehler in einer roten Popup Box angezeigt:
Zitat
Error
ShortPoll Request Failed, will retry in 3s
parsererror, SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data
Wie kann ich dieses Problem lösen und was löst es aus?
Meine Schritte:
Tablet UI in FHEM downloaden:
update all https://raw.githubusercontent.com/knowthelist/fhem-tablet-ui/master/controls_fhemtabletui.txt
shutdown restart
update all https://raw.githubusercontent.com/nesges/Widgets-for-fhem-tablet-ui/master/controls_widgets-for-fhem-tablet-ui.txt
shutdown restart
Tablet UI per SSH auf den PHP Server kopieren:
sudo cp -avr /opt/fhem/www/tablet /var/www/html/fhem/ftui
pgm2 aus Fhem im PHP Verzeichnis linken
cd /var/www/html/fhem
sudo ln -s /opt/fhem/www/pgm2/ .
Muss ich hier noch ein anderes Verzeichnis aus fhem/www linken?
In FHEM Gerät anlegen:
define TABLETUI HTTPSRV ftui/ /var/www/html/fhem/ftui Tablet-UI
Tablet UI per Browser aufrufen:
http://IP_des_Pi/fhem/ftui/index-example.html
So ich habe die Konfiguration noch einmal geändert.
Habe das Tablet UI jetzt wie empfohlen in /opt/fhem/www/tablet installiert und das device neu in fhem deklariert:
define TABLETUI HTTPSRV ftui/ ./www/tablet Tablet-UI
Für den Apache habe ich einfach das ganze www Verzeichnis von fhem verlinkt
sudo mkdir /var/www/html/fhem
cd /var/www/html/fhem
sudo ln -s /opt/fhem/www/ .
Somit kann ich ftui wie folgt aufrufen: http://Pi_IP/fhem/www/tablet/index.html
Ich bekomme allerdings immernoch nen Fehler: ShortPoll Request Failed (siehe Bild)
Wie bekomme ich diesen Fehler weg?
Du musst im HTML Header folgenden Tag einfügen und die URL entsprechend anpassen
<meta name="fhemweb_url" content="/fhem/">
Was ich nicht verstehe. Wenn Du sowieso den Apache verwendest, wieso dann noch in FHEM eine HTTP Server Instanz definieren?
Hi danke für die Antworten, es hat aber leider nicht funktioniert bzw. mache ich vielleicht was falsch?
Habe folgendes unter allen anderen meta daten in den html file eingefügt:
Zitat
<meta name="https://192.168.2.109:8083/fhem" content="/fhem/">
Wie sieht es eigentlich mit den basicAuth Daten aus? Muss ich auch noch user:pw@ zu beginn mit einfügen?
Zu der Frage wegen dem Apache. Ich lasse auf dem Apache/PHP Server (Raspberry Pi 3) auch noch andere Skripte laufen.
Ich persönlich würde es sogar bevorzugen, wenn ich FHEM und Tablet UI auf meinem Apache laufen lassen kann, da ich für das Tablet UI auch gern PHP zum programmieren verwenden möchte.
Wenn ihr mir sagen könntet wie ich FHEM und Tablet UI so modifizieren kann, das es komplett auf meinem Apache in /var/www/html/fhem laufen würde, so das ich für das Tablet UI PHP verwenden kann, wäre ich euch sehr dankbar.
Ich habe das wie folgt gelöst:
fhem läuft bei mir ohne tls und login auf Port 8082 und auf dem selben System wie der Apache
HTTPS macht dann der Apache
- Proxy für FHEM im Apache definieren (incl. login):
<Location /fhem>
# ProxyPass/ProxyPassReverse leitet HTTP requests auf eine andere URL um
ProxyPass http://localhost:8082/fhem
ProxyPassReverse http://localhost:8082/fhem
# ProxyHTMLURLMap passt Links im HTML/JavaScript Source an
ProxyHTMLURLMap / /fhem/
ProxyHTMLURLMap /fhem/ /fhem/
AuthType Basic
AuthName "Password Required"
AuthUserFile /etc/fhem-htpasswd
Require valid-user
Order deny,allow
Allow from all
</Location>
jetzt sollte schon einmal fhem unter http(s)://<deinserver>/fhem erreichbar sein.
- /opt/fhem/www/tablet (und auch die benötigten Dateien aus pgm2) nach /var/www/html/tablet (oder wie auch immer) kopieren bzw. einen link erstellen
- deine html Dateien anpassen
<meta name="fhemweb_url" content="/fhem">
(fhemweb_url nicht verändern)
alle links zu css und js Dateien anpassen (link sollte relativ zum speicherort deiner html Datei sein)
Hi, danke für die Antwort, leider funktioniert es immernoch nicht. :o
Bin langsam am verzweifeln.
Also ich schreib jetzt mal wie ich alles momentan habe:
Ich habe jetzt https von FHEM komplett deaktiviert und zu testzwecken FHEM basicAuth für WEB, WEBphone und WEBtablet jeweils auf User: fhem und PW: fhem gelegt
WEB läuft auf Port 8083
WEBphone auf 8084
WEBtablet auf 8085
Fhem läuft und funktioniert super mit meinen Homematic Teilen und kann local über http://192.168.2.109:8083/fhem erreicht werden.
Das Tablet UI ist auch installiert und läuft local über http://192.168.2.109:8083/fhem/tablet/index.html (allerdings hier ohne php Unterstützung)
Die html Dateien sowie mein php Testfile für das Tablet UI liegen in /opt/fhem/www/tablet/
Für den Apache habe das www Verzeichnis von FHEM komplett unter dem selben Namen ins Apache Verzeichnis verlinkt
sudo ln -s /opt/fhem/www/ /var/www/html/fhem
Somit erreiche ich das Tablet UI auch local über den Apache http://192.168.2.109/fhem/tablet/index.html (hier über den apache mit php Unterstützung), allerdings habe ich hier die JSON Fehler und es geht halt nix.
Dann habe ich in meine index.html folgendes eingefügt:
<meta name="fhemweb_url" content="/fhem">
per SSH habe ich dann die Module installiert und deinen Code eingefügt, allerdings mit der Änderung auf Port 8083
sudo apt-get install libapache2-mod-proxy-html
sudo a2enmod proxy
sudo a2enmod proxy_http
sudo nano /etc/apache2/conf-available/fhem.conf
<Location /fhem>
# ProxyPass/ProxyPassReverse leitet HTTP requests auf eine andere URL um
ProxyPass http://localhost:8083/fhem
ProxyPassReverse http://localhost:8083/fhem
# ProxyHTMLURLMap passt Links im HTML/JavaScript Source an
ProxyHTMLURLMap / /fhem/
ProxyHTMLURLMap /fhem/ /fhem/
AuthType Basic
AuthName "Password Required"
AuthUserFile /etc/fhem-htpasswd
Require valid-user
Order deny,allow
Allow from all
</Location>
dann noch den Benutzer fhem:fhem angelegt:
sudo htpasswd -c -s /etc/fhem-htpasswd fhem
Jetzt habe ich das ganze System einfach mal neu gestart und versucht FHEM über
http://192.168.2.109/fhem
bzw. das Tablet UI über
http://192.168.2.109/fhem/tablet/index.html
zu erreichen.
Also FHEM konnte ich damit nicht erreichen. Das Tablet UI ging ja schon unter der Adresse, allerdings kommt immernoch der JSON.parse Error und somit auch keine Werte.
Hui, is ganz schön viel Text geworden ;D
Ich hoffe ihr könnt mir sagen wo mein Fehler liegt.
Hallo,
ich nutze auch einen lokalen Apache + PHP und habe folgendes in der Config eingetragen:
<Location /fhem>
# ProxyPass/ProxyPassReverse leitet HTTP requests auf eine andere URL um
ProxyPass http://localhost:8084/fhem
ProxyPassReverse http://localhost:8084/fhem
# ProxyHTMLURLMap passt Links im HTML/JavaScript Source an
Allow from all
</Location>
Ich nutze deshalb die Webinstanz mit Port 8084, weil ich dort Cors=1 gesetzt habe. Kann mich nicht mehr daran erinnern,
was der Fehler war es hat aber auf jeden Fall mit diesem Attribut dann funktioniert.
Meine php-Dateien liegen unter /var/www/tablet. Der Aufruf erfolgt mit http://<server>/tablet/index.php
Soweit die Info, dass es bei mir (nur http) läuft 8)
Was genau sagt den dein parse-Error? Kannst du mal in den Entwicklertools (F12) des Browsers in die Konsole gucken und die
Fehlermeldung posten?
Gruß Norbert
Moin,
so habe das auch probiert, funktioniert aber auch nicht.
Was macht dieses Cors eigentlich?
Müssen die Proxy Daten eigentlich in /etc/apache2/conf-available/fhem.conf eingetragen werden?
Muss diese conf dann noch irgendwo geladen werden, oder macht das der Apache von selbst.
In der Browser Console kommt folgendes
start shortpoll fhem-tablet-ui.js:1288:13
get jsonlist2: Timer gestartetfhem-tablet-ui.js:515
start shortpoll in (ms):30000 fhem-tablet-ui.js:1288:13
shortPoll request failed: parsererror, SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data fhem-tablet-ui.js:1288:13
start shortpoll in (ms):3000 fhem-tablet-ui.js:1288:13
start shortpoll fhem-tablet-ui.js:1288:13
.....
Also langsam glaub ich das der Eintrag in der Tablet UI Wiki von wenig in nervig viel geändert werden sollte
Zitat... Mit wenigen Anpassungen ist es auch möglich das UI auf anderen Webservern (Apache, u.a.) zu betreiben ...
Hat noch jemand ne Idee wie ich das Tablet UI auf dem Apache/PHP Server zum laufen bekomme?
Ich nicht, aber andere dessen Vorschläge man hier im Forum findet
https://forum.fhem.de/index.php/topic,55132.msg470924.html#msg470924
https://forum.fhem.de/index.php/topic,62483.msg539049.html#msg539049
Hier ist ein Beispiel für NGINX
https://forum.fhem.de/index.php/topic,51235.msg428936.html#msg428936
Ich habe die genannten Zeilen in der /etc/apache2/conf-available/fhem.conf stehen.
Habe jetzt nochmal alles durchsucht und habe in der /etc/apache2/sites-available/000-default.conf
noch die folgenden Zeilen gefunden:
<VirtualHost *:80>
<Location /fhem>
# ProxyPass/ProxyPassReverse leitet HTTP requests auf eine andere URL um
ProxyPass http://192.168.1.59:8084/fhem
ProxyPassReverse http://192.168.1.59:8084/fhem
# ProxyHTMLEnable On
# ProxyHTMLURLMap passt Links im HTML/JavaScript Source an
ProxyHTMLURLMap / /fhem/
ProxyHTMLURLMap /fhem/ /fhem/
Require all granted
</Location>
</VirtualHost>
Ich muss zugeben, das ich damals das ganze per try & error solange probiert habe bis es ging.
Ein wirklicher Apachenhäuptling bin ich aber nicht :-\
Cors: https://de.wikipedia.org/wiki/Cross-Origin_Resource_Sharing (https://de.wikipedia.org/wiki/Cross-Origin_Resource_Sharing)
Und hast Du die available Seite auch aktiviert?
Zitat von: CoolTux am 10 Januar 2017, 08:44:24
Und hast Du die available Seite auch aktiviert?
Wenn ich die apache2.conf richtig verstehe passiert das automatisch:
# Include generic snippets of statements
IncludeOptional conf-enabled/*.conf
# Include the virtual host configurations:
IncludeOptional sites-enabled/*.conf
Nein. Du musst das erst noch aktivieren.
Aber sowas sieht man ja auch ganz gut im Logfile von Apache
Und wie aktiviere ich jetzt die fhem.conf, einfach einen link im conf-enabled erstellen?
sudo ln -s /etc/apache2/conf-available/fhem.conf /etc/apache2/conf-enabled/fhem.conf
Großer, Du sollst nicht FHEM aktivieren sondern erstmal Deine Apache Virtual Horst Configuration.
http://manpages.ubuntu.com/manpages/zesty/man8/a2ensite.8.html
OT:
Ey Alter - konfigurier mal den virtuellen Horst!
Zitat von: der-Lolo am 10 Januar 2017, 11:18:12
OT:
Ey Alter - konfigurier mal den virtuellen Horst!
Das ist Vorlaut und frech :P
**Jungspund**
Zitat von: CoolTux am 10 Januar 2017, 10:30:05
Nein. Du musst das erst noch aktivieren.
Aber sowas sieht man ja auch ganz gut im Logfile von Apache
Wollte nur anmerken, das es bei mir funktioniert ::)
Auch wenn ich mich nicht errinnern kann etwas aktiviert zu haben.
Seite in Apache2 Aktivieren:
sudo a2ensite fhem.conf
das legt dann eine link von sites-available auf sites-enabled
Apache neustarten und es sollte gehen.
Hi,
so ich habe es jetzt geschaft FHEM über den Apache zu leiten, allerdings kann ich trotzdem keine PHP Files im Tablet UI ausführen (da kommt dann eine Downloadmöglichkeit)
Beispiel für den Aufruf:
1) FHEM -> http://192.168.2.109/fhem
2) Tablet UI -> http://192.168.2.109/fhem/tablet/index.html
3) Tablet UI -> http://192.168.2.109/fhem/tablet/phpinfo.php
1 und 2 funktionieren soweit, da dort kein php verwendet wird
bei 3. gehts es nicht (wie gesagt, dort kommt dann eine Downloadaufforderung)
Mein Ziel ist es, das ich mir das Tablet UI aus einem php file dynamisch erzeuge. Quasi für redundante Teile einfach ne for Schleife verwenden kann ohne den html code dutzende male zu kopieren. (das ist nur 1 Beispiel)
Folgendes habe ich jetzt gemacht:
sudo nano /etc/apache2/sites-available/fhem_proxy_80.conf
Inhalt:
<VirtualHost *:80>
ServerAdmin webmaster@example.com
ServerName fhem
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/fhem-error.log
CustomLog ${APACHE_LOG_DIR}/fhem-access.log combined
ProxyRequests Off
ProxyVia Off
ProxyPreserveHost On
<Location /fhem>
ProxyPass http://localhost:8083/fhem
ProxyPassReverse http://localhost:8083/fhem
</Location>
<Directory />
# RedirectPermanent / /fhem
</Directory>
<Proxy *>
AuthType Basic
AuthName "Password Required"
AuthUserFile /etc/fhem-htpasswd
Require valid-user
Order deny,allow
Allow from all
</Proxy>
</VirtualHost>
sudo a2dissite 000-default.conf
sudo a2ensite fhem_proxy_80.conf
So wie ich das jetzt verstanden habe, wird die Anfrage von extern über den Apache an den FHEM Server weiter geleitet, welcher ja kein php kann. Verstehe ich das soweit richtig?
Aber wie bekomme ich es denn jetzt hin, das ich für mein Tablet UI php verwenden kann?
Hast du php-mode installiert und geladen?
Was meinst du damit? php5 ist installiert.
Wenn ich die phpinfo.php ins root Verzeichnis des Apache kopiere /var/www/html und wie folgt ausführe
http://192.168.2.109/phpinfo.php
dann funktioniert es.
Ok dann funktioniert php also. Bin gerade am überlegen ob man noch irgendwas anderes einstellen muß.
Ich glaube da muß jemand anderes helfen.
Zitat von: Matthias1912 am 11 Januar 2017, 17:50:32
So wie ich das jetzt verstanden habe, wird die Anfrage von extern über den Apache an den FHEM Server weiter geleitet, welcher ja kein php kann. Verstehe ich das soweit richtig?
Ja, das denke ich.
Zitat
Aber wie bekomme ich es denn jetzt hin, das ich für mein Tablet UI php verwenden kann?
Wie Du das hinbekommst ist Deine Sache, aber ich habe es so gemacht:
TabletUI ist ganz normal installiert, also im /opt/fhem/www/tablet-Verzeichnis.
Meine PHP-Dateien liegen in /var/www/html. Dort liegt auch eine index.php.
Per PHP sorge ich dafür, dass das hier in jeder Datei unter <head> steht:
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Expires" content="-1">
<meta http-equiv="cache-control" content="no-store">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<meta name="gridster_disable" content="1">
<meta name="widget_base_width" content="142">
<meta name="widget_base_height" content="108">
<meta name="mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="longpoll" content="1">
<meta name="debug" content="0">
<link rel="stylesheet" href="/fhem/tablet/lib/jquery.gridster.min.css" />
<link rel="stylesheet" href="/fhem/tablet/css/fhem-tablet-ui.css" />
<link rel="stylesheet" href="/fhem/tablet/lib/font-awesome.min.css" />
<link rel="stylesheet" href="/fhem/tablet/lib/openautomation.css" />
<link rel="stylesheet" href="/fhem/tablet/lib/jquery.toast.min.css" />
<link rel="stylesheet" href="/fhem/tablet/lib/powerange.min.css" />
<link rel="stylesheet" href="/fhem/tablet/css/fhem-tablet-ui-wdtimer.css" />
<link rel="stylesheet" href="/fhem/tablet/style.css">
<script type="text/javascript" src="/fhem/pgm2/jquery.min.js"></script>
<script type="text/javascript" src="/fhem/tablet/lib/jquery.knob.mod.min.js"></script>
<script type="text/javascript" src="/fhem/tablet/lib/jquery.toast.min.js"></script>
<script type="text/javascript" src="/fhem/tablet/lib/jquery.circlemenu.js"></script>
<script type="text/javascript" src="/fhem/tablet/lib/powerange.min.js"></script>
<script type="text/javascript" src="/fhem/tablet/lib/jquery.gridster.min.js"></script>
<script type="text/javascript" src="/fhem/tablet/lib/fa-multi-button.min.js"></script>
<script type="text/javascript" src="/fhem/tablet/js/fhem-tablet-ui.js"></script>
D.h. Die Tablet-UI-Libs sind ganz normal in FHEM, aber die Einbindung des TabletUI wird vom PHP erzeugt. Natürlich würden die Pfade oben nicht ohne Weiteres funktionieren. D.h. so funktionieren die ganzen PHPs, aber halt nicht das TabletUI.
Dafür sorgt dann die folgende virtual Host Config für Apache:
<VirtualHost *:80>
DocumentRoot /var/www/html
<Location /fhem>
ProxyPass http://localhost:9046/fhem
ProxyPassReverse http://localhost:9046/fhem
</Location>
# Chrome is difficult to convince not to cache
<LocationMatch "index.html">
Header always append cache-control no-store
</LocationMatch>
</VirtualHost>
Ach ja, man braucht natürlich noch eine FHEMWEB-Instanz mit Port 9046. Die kann man dann ggf. noch "sicher" konfigurieren, aber das ist ein anderes Thema.
Dein UI solltest Du dann einfach mit http://192.168.2.109/ erreichen.
Gruß,
Thorsten
Zitat von: Matthias1912 am 11 Januar 2017, 17:50:32
so ich habe es jetzt geschaft FHEM über den Apache zu leiten, allerdings kann ich trotzdem keine PHP Files im Tablet UI ausführen (da kommt dann eine Downloadmöglichkeit)
Beispiel für den Aufruf:
1) FHEM -> http://192.168.2.109/fhem
2) Tablet UI -> http://192.168.2.109/fhem/tablet/index.html
3) Tablet UI -> http://192.168.2.109/fhem/tablet/phpinfo.php
So wie ich das jetzt verstanden habe, wird die Anfrage von extern über den Apache an den FHEM Server weiter geleitet, welcher ja kein php kann. Verstehe ich das soweit richtig?
Aber wie bekomme ich es denn jetzt hin, das ich für mein Tablet UI php verwenden kann?
Die Weiterleitung und php sind zwei verschiedene Dinge.
Das mit dem ReverseProxy hast du ja hinbekommen.
Das bedeutet aber auch, das alles unter
http://192.168.2.109/fhem
direkt an dein FHEM geleitet wird.
Daher wird php dort nicht funktionieren.
Die Daten aus /opt/fhem/www/tablet und die ...pgm2/jquery.min.js müssen über dein Apache root Verzeichnis (vermutlich /var/www/html ) erreichbar sein.
Also entweder dorthin kopieren oder einen link erstellen.
z.B. unter /var/www/html/tablet
Deine Tablet UI Oberfläche wäre dann über http://192.168.2.109/tablet erreichbar (links in den html/php Dateien musst du natürlich anpassen)
[Eine weitere Alternative wäre es, einen virtual Host anzulegen und /opt/fhem/www/tablet direkt als Verzeichnis dafür anzugeben.]
Zitat von: klausw am 12 Januar 2017, 15:18:46Die Daten aus /opt/fhem/www/tablet und die ...pgm2/jquery.min.js müssen über dein Apache root Verzeichnis (vermutlich /var/www/html ) erreichbar sein.
Also entweder dorthin kopieren oder einen link erstellen.
z.B. unter /var/www/html/tablet
Deine Tablet UI Oberfläche wäre dann über http://192.168.2.109/tablet erreichbar (links in den html/php Dateien musst du natürlich anpassen)
[Eine weitere Alternative wäre es, einen virtual Host anzulegen und /opt/fhem/www/tablet direkt als Verzeichnis dafür anzugeben.]
Das ist meiner Meinung nach beides verwirrender als meine Vorgehensweise.
Gruß,
Thorsten
Super Thorsten, danke. jetzt läufts wie ichs will.
An die Includes im html/php file hatte ich nicht gedacht. Wollte alles umlenken, aber es reicht ja wenn nur die includes umgelenkt werden und das php im apache ausgeführt wird.
Muss jetzt nur noch die https Verbindung für den apache und für den VirtualHost zum laufen bekommen. Das werde ich gleich mal am Wochenende in Angriff nehmen.
Zitat von: Matthias1912 am 13 Januar 2017, 00:09:07
Super Thorsten, danke. jetzt läufts wie ichs will.
An die Includes im html/php file hatte ich nicht gedacht. Wollte alles umlenken, aber es reicht ja wenn nur die includes umgelenkt werden und das php im apache ausgeführt wird.
Keine Ahnung, was Du mit Includes meinst...
Zitat
Muss jetzt nur noch die https Verbindung für den apache und für den VirtualHost zum laufen bekommen. Das werde ich gleich mal am Wochenende in Angriff nehmen.
Schau mal, ob Du mit der virtual Host Definition im Anhang klarkommst. Da ist auch noch Basic Auth. mit dabei.
Gruß,
Thorsten
Hi
Zitat
Keine Ahnung, was Du mit Includes meinst...
Sowas aus dem Header
alt:
<link rel="stylesheet" href="css/fhem-tablet-ui.css" />
neu:
<link rel="stylesheet" href="/fhem/tablet/css/fhem-tablet-ui.css" />
So das https funktioniert schonmal, allerdings habe ich noch ein Problem beim ProxyPassReverse.
Ich habe im Fhem alles per https laufen und wenn ich für ProxyPassReverse https://localhost:8084/fhem verwende funktioniert es nicht.
Wenn ich allerdings für WEBphone (Port 8084) das HTTPS Attribute entferne und für ProxyPassReverse http://localhost:8084/fhem verwende, dann gehts.
Ich möchte aber alles auf https laufen lassen (auch die ProxyPass und ProxyPassReverse). Was muss ich in der VirtualHost noch eintragen?
Meine VirtualHost Config:
<VirtualHost *:443>
ServerAdmin webmaster@example.com
ServerName ControlPi
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/myPort_443_error.log
CustomLog ${APACHE_LOG_DIR}/myPort_443_error_access.log combined
ProxyRequests Off
ProxyVia Off
ProxyPreserveHost On
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/server.crt
SSLCertificateKeyFile /etc/apache2/ssl/server.key
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
BrowserMatch "MSIE [2-6]" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0
BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
<Location /fhem>
ProxyPass https://localhost:8084/fhem
ProxyPassReverse https://localhost:8084/fhem
AuthType Basic
AuthName "Password Required"
AuthUserFile /etc/apache2/htpasswd
# Diese Benutzer haben Zugriff
# Syntax: Require valid-user (alle in der htpasswd)
# Syntax: Require user user1 user2 ... (nur diese User aus der htpasswd)
Require user fhem
Order deny,allow
Allow from all
</Location>
<Location />
AuthType Basic
AuthName "Password Required"
AuthUserFile /etc/apache2/htpasswd
# Diese Benutzer haben Zugriff
# Syntax: Require valid-user (alle in der htpasswd)
# Syntax: Require user user1 user2 ... (nur diese User aus der htpasswd)
Require valid-user
Order deny,allow
Allow from all
</Location>
</VirtualHost>
Ich hatte an das hier gedacht, aber das funktioniert auch nicht.
<Proxy /fhem>
AuthType Basic
AuthName "Password Required"
AuthUserFile /etc/apache2/htpasswd
# Diese Benutzer haben Zugriff
# Syntax: Require valid-user (alle in der htpasswd)
# Syntax: Require user user1 user2 ... (nur diese User aus der htpasswd)
Require user fhem
Order deny,allow
Allow from all
</Proxy>
Hi,
da habe ich keine Ahnung. Warum sollte ich auf ein und demselben Server mit SSL arbeiten? Da wäre es vielleicht geschickter, die entsprechende FHEMWEB-Instanz für Zugriffe von außen dicht zu machen. Früher gab's da mal das global-Attribut, ich glaube aber, dass das jetzt anders geht.
Gruß,
Thorsten
Hi,
mit der Lösung die FHEMWEB-Instanz von außen zu schließen kõnnte ich auch leben.
Die FHEMWEB-Instanz muss/darf dann NUR über localhost des Pi erreichbar sein.
Habe aber nichts gefunden wie das bei fhem geht.
Hi,
schau Dir mal das Attribut allowfrom von FHEMWEB an.
Gruß,
Thorsten
danke, jetzt läuft alles wie es soll
Was hast Du bei allowfrom eingetragen?
Zitat
Was hast Du bei allowfrom eingetragen?
attr WEBphone allowfrom 127.0.0.1
Danke. Das hatte ich nämlich noch nicht...