Schlechtes Gateway beim Einrichten von NGINX als Reverse-Proxy-Server für GAE

Schlechtes Gateway beim Einrichten von NGINX als Reverse-Proxy-Server für GAE

Ich möchte NGINx als Reverse-Proxy-Server verwenden, damit ich meine GAE-Website (Google App Engine) vom chinesischen Festland aus öffnen kann, da dort die meisten Google-IPs von der GFW blockiert werden.

DNS: Ich habe diese DNS-Einträge: -

A     mydomain.com ==> x.x.x.x
CNAME www          ==> ghs.google.com
CNAME *            ==> ghs.google.com

Ich plane, Geo-DNS zu verwenden, um auf meinen Reverse-Proxy zu verweisen, falls die Anfrage vom chinesischen Festland kommt. Derzeit teste ich lokal, indem ich Host-Datensätze so einstelle, dass mydomain.com auf localhost verweist.

Ich habe Nginx 1.1.19 auf Ubuntu 12.04.

Meine Site-Konfigurationsdatei ist: -

server {
  #listen       80;
  listen        443 ssl;
  server_name   mydomain.com;

  ssl on;
  ssl_certificate /home/user/Desktop/ssl/mydomain.com.pem;
  ssl_certificate_key /home/user/Desktop/ssl/mydomain.com.key;
  ssl_session_timeout 5m;
  ssl_protocols SSLv3 TLSv1;
  ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
  ssl_prefer_server_ciphers on;

  large_client_header_buffers 4 16k; 

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

 # keepalive_timeout 70;

  location / {
    proxy_pass       https://mydomain.com/;
    proxy_set_header Host www.mydomain.com;

    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Real-HOST  $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Proxy-Hostname $scheme://$http_host;

    proxy_redirect off;
    proxy_intercept_errors on;

    #error_page 500 = /error_page.html;
 }

  #location = /error_page.html {
   # root /local_path_to_static_files_root;
  #}
}

Als ich versuchte, https://mydomain.com zu öffnen:-

Ich habe zu Beginn die Fehlermeldung „Die Anzahl der Verbindungen ist zu niedrig“ erhalten. Lösen Sie das Problem, indem Sie der Datei nginx.conf Folgendes hinzufügen/bearbeiten: -

events {
        worker_connections 8024;
        # multi_accept on;
}

dann habe ich den Fehler „zu viele offene Dateien“ erhalten. Ich habe ihn gelöst, indem ich der Datei nginx.conf Folgendes hinzugefügt/bearbeitet habe: -

worker_rlimit_nofile 5000;

Jetzt erhalte ich den Fehler 504 Gateway Time-out (Verbindungs-Timeout): -

Irgendeine Idee, was ich tue oder falsch gemacht habe??

AKTUALISIEREN:

Es stellte sich als eine Endlosschleife der Umleitung heraus, weil ich mydomain.com ==> 127.0.0.1die Hosts-Datei habe und der Reverse-Proxy die eingehenden Anfragen an mydomain.com weiterleitet, sodass er immer wieder selbst Anfragen stellt. Ich habe den URL-Proxy entfernt, der die Anfragen von Hosts weiterleitet, um Schleifen zu vermeiden.

GELÖST

Antwort1

Es stellte sich als eine Endlosschleife der Umleitung heraus, weil ich mydomain.com ==> 127.0.0.1die Hosts-Datei habe und der Reverse-Proxy die eingehenden Anfragen an mydomain.com weiterleitet, sodass er immer wieder selbst Anfragen stellt. Ich habe den URL-Proxy entfernt, der die Anfragen von Hosts weiterleitet, um Schleifen zu vermeiden.

verwandte Informationen