So konfigurieren Sie Nginx, um zwischen dem PC- oder Mobiltelefonzugriff auf verschiedene Domänennamen zu unterscheiden

So konfigurieren Sie Nginx, um zwischen dem PC- oder Mobiltelefonzugriff auf verschiedene Domänennamen zu unterscheiden

Die neue offizielle Website ist online, aber die Erfahrung beim Zugriff auf die neue offizielle Website auf einem Mobiltelefon ist sehr schlecht. Beim Zugriff auf die neue offizielle Website auf einem Mobiltelefon muss auf die alte offizielle Website zugegriffen werden. Ein automatischer Sprung kann durch Ändern der Nginx-Konfiguration erreicht werden.

Fügen Sie zunächst der Nginx-Konfigurationsdatei der neuen offiziellen Website ein Sprungurteil hinzu und bestimmen Sie mithilfe des Benutzeragenten, ob die Quelle ein mobiles Terminal oder ein PC-Terminal ist:

Server {
  hören Sie 80;
  Servername www.7d.com 7d.com; // Neufassung des Domänennamens der neuen offiziellen Website .* https://$host$request_uri last;
}

Server {
  hören Sie 443 SSL;
  Servername www.7d.com 7d.com; // Neuer offizieller Domänenname der Website root /data/7d;
  Zeichensatz UTF-8;
  SSL-Zertifikat /usr/local/nginx/_.7d.com.crt;
  SSL-Zertifikatsschlüssel /usr/local/nginx/_.7d.com.key;

  /s1$ http://s1.7d.com/start zuletzt neu schreiben;

  if ( $http_user_agent ~* "(Android|iPhone|Windows Phone|UC|Kindle)" ){ // Umleitungsurteil neu schreiben ^/(.*)$ https://m.7d.com$uri-Umleitung; // Umleitung bedeutet 302-Umleitung (vorübergehende Übertragung) 
  }   
  …
}

Anschließend wird die Konfigurationsdatei der alten offiziellen Website auf den neuen Domänennamen geändert. Außerdem ist eine Sprungentscheidung erforderlich, um zur neuen offiziellen Website zurückzuspringen, wenn die Anforderung nicht für den mobilen Zugriff bestimmt ist.

 Server {
  hören Sie 80;
  Servername m.7d.com; // Umschreibung des alten offiziellen Domänennamens der Website .* https://$host$request_uri last;
}

Server {
  hören Sie 443 SSL;
  Servername m.7d.com; // alter offizieller Website-Domänenname root /data/7d;
  Zeichensatz UTF-8;
  SSL-Zertifikat /usr/local/nginx/_.7d.com.crt;
  SSL-Zertifikatsschlüssel /usr/local/nginx/_.7d.com.key;

  /s1$ http://s1.7d.com/start zuletzt neu schreiben;

  if ( $http_user_agent !~* "(Android|iPhone|Windows Phone|UC|Kindle)" ){ // Füge vor ~ ein ! hinzu. Wenn der Zugriff nicht von einem Mobilgerät aus erfolgt, wird auf die neue offizielle Website zurückgesprungen.
    umschreiben ^/(.*)$ https://m.7d.com$uri redirect; // Umleitung bedeutet 302-Umleitung}   
  …
}

Wenn ein Mobiltelefon auf den Domänennamen der neuen offiziellen Website 7d.com zugreift, greift es daher tatsächlich auf den Inhalt der alten offiziellen Website zu. Klicken Sie auf die Adressleiste des Browsers und Sie werden sehen, dass der Domänenname m.7d.com ist.

Tatsächlich basiert es auf HTTP_USER_AGENT, um eine Beurteilung vorzunehmen, und verwendet Nginx, um einen 302-Sprung durchzuführen. Wenn das letzte Wort „Umleitung“ in der Umschreibeanweisung in „permanent“ geändert wird, bedeutet dies einen 301-Sprung (permanente Übertragung).

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Implementierung der Nginx-Konfiguration für den Multi-Port- und Multi-Domain-Name-Zugriff
  • Lösen Sie das Problem der Änderung des Konfigurationszugriffs von tp5 unter nginx
  • So konfigurieren Sie Nginx, um die Zugriffshäufigkeit derselben IP zu begrenzen
  • Schritte zum Konfigurieren von Nginx SSL zur Implementierung des HTTPS-Zugriffs (für Anfänger geeignet)
  • Detaillierte Erläuterung der Nginx-Zugriffsbeschränkungskonfiguration
  • Detaillierte Erläuterung der SSL-Modulkonfiguration von Nginx zur Unterstützung des HTTPS-Zugriffs
  • So verwenden Sie nginx zum Konfigurieren des Zugriffs auf wgcloud

<<:  vue verwendet Ele.me UI, um die Filterfunktion von Teambition zu imitieren

>>:  MySQL-Methode zum Anzeigen der aktuell verwendeten Konfigurationsdatei my.cnf (empfohlen)

Artikel empfehlen

Die Frontend-Entwicklung muss jeden Tag lernen, HTML-Tags zu verstehen (1)

2.1 Semantisierung sorgt dafür, dass Ihre Webseit...

Wie wird eine SQL-Anweisung in MySQL ausgeführt?

Inhaltsverzeichnis 1. Analyse der MySQL-Architekt...

Nginx löst Cross-Domain-Probleme und bindet Seiten von Drittanbietern ein

Inhaltsverzeichnis Vorwort Schwierigkeit Domänenü...

Praktische Methode zum Löschen einer Zeile in einer MySql-Tabelle

Zunächst müssen Sie bestimmen, welche Felder oder...

So fügen Sie der Seite über Element UI eine Seitennavigationsleiste hinzu

brauchen Fügen Sie eine Paging-Leiste hinzu, die ...

Detaillierte Erklärung der JQuery-Datagrid-Abfrage

Inhaltsverzeichnis Fügen Sie dem Tree-Element Cod...

Eine kurze Diskussion über den Unterschied zwischen src und href in HTML

Einfach ausgedrückt bedeutet src „Ich möchte dies...

Das Problem der Verwendung von Slots durch Vue+tsx wird nicht behoben

Inhaltsverzeichnis Vorwort Finden Sie das Problem...

React-Methode zum Anzeigen von Daten auf Seiten

Inhaltsverzeichnis Übergeordnete Komponente „list...