nginx -> fhemweb: seite aktualisiert nicht automatisch?

Begonnen von reen, 21 März 2016, 09:09:42

Vorheriges Thema - Nächstes Thema

reen

Hi
ich habe einen reverse proxy mit nginx aufgesetzt. funktioniert auch.

wenn ich nun das fhemweb über nginx aufrufe komme ich auch auf die Seite.
Das einzig bisher auffallende unterschied ist, dass sich die Seite nicht automatisch aktualisiert.
Also wenn ich zum Beispiel ein Licht einschalte, ändert sich der Status nicht, erst wenn ich manuell die Seite neu lade erhalte ich den korrekten Status angezeigt.

Ist das ein bekanntes Verhalten bei Verbindungen über ein reverse proxy und lässt sich dagegen etwas unternehmen?

Lion

Ich mag Squid lieber als Reverseproxy oder auch nur so als Proxy. Schon probiert?

Aber zum Test mach doch erstmal eine einfache Portweiterleitung.

Lion

CoolTux

Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Lion

Zitat von: CoolTux am 21 März 2016, 18:43:42
Squide ist kein Reverseproxy.

Komisch wie ich das damit seit Jahren hinbekomme ...

schka17

squid als reverse proxy, wusste ich auch nicht, gibts aber,  http://wiki.squid-cache.org/SquidFaq/ReverseProxy. Ich habe es gerade mal mit meinem nginx probiert, liegt eher an deiner konfig, bei mir funktioniert fhemweb mit nginx als reverse proxy.


Sent from my iPad using Tapatalk
M: Thinclient x64 Debian | CUL FS20, HMS100WD, HMS100TF, HMS100T, HMS100CO, S300, S555TH | OWServer DS1420, DS18B20, DS2408 | RFXCOM UVN128, THWR800, THGR228N,RTGR328, PCR800 |Jeelink PCA301 EC3000|CUNO+IR|HMLAN|HMUSB|CUL433 Somfy|mySensors|espEasy
S1:Raspberry mit BPM810, Jeelink EC3000

reen

Danke für eure Beiträge.
meine nginx config ist eigentlich ganz simpel:

#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    #access_log  logs/access.log  main;

    sendfile        on;
    keepalive_timeout  65;


    # HTTP BASIC Authentication
    auth_basic "NGINX";
    auth_basic_user_file .htpasswd;

    # SSL
    ssl_certificate ssl/server.crt;
    ssl_certificate_key ssl/server.key;

    server {
        listen       443 ssl default_server;
        server_name  localhost;

        location / {
            root   html;
            index  index.html index.htm;
        }

    }

    server {
        listen 443 ssl;
        server_name fhem.*;
        location / {
            proxy_pass http://192.168.2.251:8083;
        }
    }

}


Kann mir nicht erklären warum sich die FhemWEB Seiten nicht automatisch aktualisieren. Das macht die arbeit über den reverseproxy nicht gerade angenehmer.  :-\

fiedel

Zitat von: schka17 am 21 März 2016, 19:48:20
squid als reverse proxy, wusste ich auch nicht, gibts aber,  http://wiki.squid-cache.org/SquidFaq/ReverseProxy. Ich habe es gerade mal mit meinem nginx probiert, liegt eher an deiner konfig, bei mir funktioniert fhemweb mit nginx als reverse proxy.


Sent from my iPad using Tapatalk

Hättest du netterweise noch die Konfig von diesem Test zu Hand?

Gruß
Frank
FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423

schka17

Zitat von: fiedel am 06 Juni 2016, 12:30:20
Hättest du netterweise noch die Konfig von diesem Test zu Hand?

Gruß
Frank

Hi, ist kein Test sonder produktiv System, hier bitte, ich habe ein paar nicht relevante serverdefinitionen entfernt und auch etwas anonymisiert, ich hoffe habe nicht zuviele Klammern entfernt.
user www-data;
worker_processes 4;
pid /var/run/nginx.pid;

events {
worker_connections 768;
# multi_accept on;
}

http {

##
# Basic Settings
##

sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
# server_tokens off;

# server_names_hash_bucket_size 64;
# server_name_in_redirect off;

include /etc/nginx/mime.types;
default_type application/octet-stream;

##
# Logging Settings
##

access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;

##
# Gzip Settings
##

gzip on;
gzip_disable "msie6";

# gzip_vary on;
# gzip_proxied any;
# gzip_comp_level 6;
# gzip_buffers 16 8k;
# gzip_http_version 1.1;
# gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

##
# nginx-naxsi config
##
# Uncomment it if you installed nginx-naxsi
##

#include /etc/nginx/naxsi_core.rules;

##
# nginx-passenger config
##
# Uncomment it if you installed nginx-passenger
##

#passenger_root /usr;
#passenger_ruby /usr/bin/ruby;

##
# Virtual Host Configs
##

include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;



#mail {
# # See sample authentication script at:
# # http://wiki.nginx.org/ImapAuthenticateWithApachePhpScript
#
# # auth_http localhost/auth.php;
# # pop3_capabilities "TOP" "USER";
# # imap_capabilities "IMAP4rev1" "UIDPLUS";
#
# server {
# listen     localhost:110;
# protocol   pop3;
# proxy      on;
# }
#
# server {
# listen     localhost:143;
# protocol   imap;
# proxy      on;
# }
#}
server {
### server port and name ###
        listen          172.16.1.239:443;
ssl on;
        server_name     cloud.mydomain.com;

### SSL log files ###
        access_log      /var/log/nginx/ssl-access.log;
        error_log       /var/log/nginx/ssl-error.log;

### SSL cert files ###
        ssl_certificate      ssl/mydomain.com.crt;
        ssl_certificate_key  ssl/mydomain.com.key;

### Add SSL specific settings here ###


ssl_protocols        TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers RC4:HIGH:!aNULL:!MD5;
      ssl_prefer_server_ciphers on;
      keepalive_timeout    60;
ssl_session_cache    shared:SSL:10m;
      ssl_session_timeout  10m;

### We want full access to SSL via backend ###
      location / {
        rewrite /cloud/(.*) /$1 break;
proxy_pass  https://172.16.1.252;

### force timeouts if one of backend is died ##
        proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;

### Set headers ####
                proxy_set_header        Accept-Encoding   "";
        proxy_set_header        Host            $host;
        proxy_set_header        X-Real-IP       $remote_addr;
        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;

### Most PHP, Python, Rails, Java App can use this header ###
#proxy_set_header X-Forwarded-Proto https;##
#This is better##
        proxy_set_header        X-Forwarded-Proto $scheme;
add_header              Front-End-Https   on;


### By default we don't want to redirect it ####
        proxy_redirect     off;
}
}
server {
        ### server port and name ###
        listen          172.16.1.239:9998;
        ssl             on;
        server_name     geo.mydomain.com;

        ### SSL log files ###
        access_log      /var/log/nginx/ssl-access.log;
        error_log       /var/log/nginx/ssl-error.log;

        ### SSL cert files ###
        ssl_certificate      ssl/mydomain.com.crt;
        ssl_certificate_key  ssl/mydomain.com.key;

        ### Add SSL specific settings here ###


        ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers RC4:HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers on;
        keepalive_timeout    60;
        ssl_session_cache    shared:SSL:10m;
        ssl_session_timeout  10m;

location / {
                # rewrite /geo/(.*) /$1 break;
                #20150317 proxy_pass  https://172.16.1.9:9999/fhem/geo;
                proxy_pass  http://172.16.1.9:9999/fhem/geo;

                ### force timeouts if one of backend is died ##
                proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;

                ### Set headers ####
                proxy_set_header        Accept-Encoding   "";
                proxy_set_header        Host            $host;
                proxy_set_header        X-Real-IP       $remote_addr;
                proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;

                ### Most PHP, Python, Rails, Java App can use this header ###
                #proxy_set_header X-Forwarded-Proto https;##
                #This is better##
                proxy_set_header        X-Forwarded-Proto $scheme;
                add_header              Front-End-Https   on;


                ### By default we don't want to redirect it ####
                proxy_redirect     off;
        }

      }





# fhem web frontend
server {
    listen 8083;
    location / {
        proxy_pass http://172.16.1.9:8083;
        proxy_redirect off;
    proxy_buffering off;
    }
}
# fhem smartphone frontend
server {
    listen 8084;
    location / {
        proxy_pass http://172.16.1.9:8084;
        proxy_redirect off;
proxy_buffering off;
    }
}
# fhem tablet frontend
server {
        listen 8085;
    location / {
        proxy_pass http://172.16.1.9:8085;
        proxy_redirect off;
        proxy_buffering off;
   }

}
# fhem  HAL9000 frontend
server {
    listen 9000;
    location / {
        proxy_pass http://172.16.1.9:9000;
        proxy_redirect off;
        proxy_buffering off;
    }
}

# fhem webiviewcontrol
server {
    listen 9001;
    location / {
        proxy_pass http://172.16.1.9:9001;
        proxy_redirect off;
        proxy_buffering off;
    }
}



}

}
M: Thinclient x64 Debian | CUL FS20, HMS100WD, HMS100TF, HMS100T, HMS100CO, S300, S555TH | OWServer DS1420, DS18B20, DS2408 | RFXCOM UVN128, THWR800, THGR228N,RTGR328, PCR800 |Jeelink PCA301 EC3000|CUNO+IR|HMLAN|HMUSB|CUL433 Somfy|mySensors|espEasy
S1:Raspberry mit BPM810, Jeelink EC3000

fiedel

Vielen Dank! Werde es demnächst bei meinen Einrichtversuchen verwenden. Evt. fehlende Klammern finde ich dann schon.

Gruß
Frank
FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423