So konfigurieren Sie auf nginx: Fallback / Standard-Website

7

Wenn in Apache 1) mehrere virtuelle Hosts einen Port abhören und 2) keine Anforderungen mit einem der virtuellen Hosts übereinstimmen, ist der erste virtuelle Host derjenige, der die Anforderung beantwortet . Zum Beispiel, wenn ich diese Konfiguration habe:

<VirtualHost *:8080>
  ServerName www.fallbacksite.com:8080
  ServerAlias *.fallbacksite.com
  # ...
</VirtualHost>

<VirtualHost *:8080>
  ServerName www.specific-site.com:8080
  ServerAlias *.specific-site.com
  # ...
</VirtualHost>

Dann:

  • Wenn jemand spezifisch-site.com:8080, dann wird der zweite virtuelle Host die Anfrage beantworten (keine Überraschung hier)
  • Wenn jemand fallbacksite.com:8080 besucht, beantwortet der erste virtuelle Host die Anfrage (keine Überraschung hier).
  • Wenn jemand hellohowareyou.com:8080 besucht (und hellohowareyou.com auf den Server zeigt), beantwortet der erste virtuelle Host die Anfrage

Es ist das letzte Szenario, das ich mit nginx implementieren möchte, aber auf der Website nginx.org konnte ich nichts darüber sehen. Ich habe übereifrige Platzhalter ausprobiert, aber es wird beanstandet, dass sie nicht gültig sind.

Wie würden Sie die obige Konfiguration in Nginx durchführen? Danke im Voraus!

Ramon Tayag
quelle

Antworten:

8

Wenn Sie nur möchten, dass ein bestimmter virtueller Host die Anfrage beantwortet, können Sie einfach wie folgt vorgehen. Fügen Sie die Listenzeile hinzu (oder ändern Sie sie), die default_serveram Ende eingefügt werden soll. Dadurch wird dieser virtuelle Host bedient, ohne die URL zu ändern.

server {
    # Add default_server for any unresolved request
    listen 80 default_server;        
}

Wenn Sie eine Weiterleitung durchführen möchten, wenn ein Benutzer trifft hellohowareyou.com, können Sie einen neuen serverBlock hinzufügen und zu dem Host umleiten, den Sie verwenden möchten:

server {
    # Add default_server only here for any unresolved request
    listen 80 default_server;    
    server_name _;
    rewrite ^ http://fallbacksite.com$request_uri permanent;
}
Jap Mul
quelle