Nginx-Konfiguration: Trennung von PC-Site und mobiler Site zur Realisierung der Umleitung

Nginx-Konfiguration: Trennung von PC-Site und mobiler Site zur Realisierung der Umleitung

Verwenden Sie nginx, um die Trennung von PC-Site und mobiler Site zu konfigurieren. Meine PC-Site und mobile Site sind im Nuxt-Framework geschrieben, da Nuxt für SEO praktisch ist. Nuxt basiert auf der Verbesserung von Vue. Wenn Sie es nicht wissen, suchen Sie bewusst nach Nuxt.

1. Installieren Sie nginx basierend auf der APT-Quelle

sudo apt-get installiere nginx

2. Erstellen Sie eine neue Konfigurationsdatei test.com im angegebenen Verzeichnis: Der Dateiname ist beliebig

//Das Verzeichnis befindet sich in /etc/nginx/sites-available/ 

3. Bearbeiten Sie die Konfigurationsdatei und den Inhalt:

Beim Bearbeiten oder Speichern von Dateien können Probleme auftreten, beispielsweise aufgrund unzureichender Berechtigungen:

1. Sie können sudo vi verwenden oder zuerst vim installieren und dann sudo vim verwenden, um die Datei zu bearbeiten

3. Verwenden Sie sudo su direkt und geben Sie das Kennwort ein, um zum Root-Benutzer zu wechseln.

2. Sie können auch direkt chmod 777 /etc/nginx ausführen, um die Berechtigungen des gesamten Nginx-Ordners zu ändern.

Server {
  hören Sie 80;
  Servername kason995.com;

  Setzen Sie $mobile_rewrite auf „nicht_ausführen“.

  if ($http_user_agent ~* "(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od|ad)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino") {
    Setzen Sie $mobile_rewrite und führen Sie es aus.
  }

  if ($http_user_agent ~* "^(1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[aw])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-)") {
    Setzen Sie $mobile_rewrite und führen Sie es aus.
  }

  Standort / {
    wenn ($mobile_rewrite = ausführen) {
    return 301 [http://kason<wbr>995.com/m$re<wbr>quest_uri](http://kason995.com/m$request_uri); # Mobile Version}
    wenn ($mobile_rewrite = nicht_ausführen) {
    proxy_pass [http://172.1<wbr>68.1.93:8009](http://172.168.1.93:8009/); # PC-Version}

    Proxy_http_Version 1.1;
    Proxy_Set_Header-Upgrade $http_upgrade;
    proxy_set_header Verbindung „Upgrade“;
    Proxy_Set_Header Host $host;
    Proxy-Cache-Bypass $http_upgrade;
  }

  Standort ^~/m/ {
    Proxy-Passwort [http://172.1<wbr>68.1.93:8090](http://172.168.1.93:8090/);
    Proxy_http_Version 1.1;
    Proxy_Set_Header-Upgrade $http_upgrade;
    proxy_set_header Verbindung „Upgrade“;
    Proxy_Set_Header Host $host;
    Proxy-Cache-Bypass $http_upgrade;
  }
}
Server {
  hören Sie 80;
  Servername kason995.com;

  Setzen Sie $mobile_rewrite auf „nicht_ausführen“.

  if ($http_user_agent ~* "(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od|ad)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino") {
    Setzen Sie $mobile_rewrite und führen Sie es aus.
  }

  if ($http_user_agent ~* "^(1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[aw])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-)") {
    Setzen Sie $mobile_rewrite und führen Sie es aus.
  }

  Standort / {
    wenn ($mobile_rewrite = ausführen) {
    return 301 [http://kason<wbr>995.com/m$re<wbr>quest_uri](http://kason995.com/m$request_uri); # Mobile Version}
    wenn ($mobile_rewrite = nicht_ausführen) {
    proxy_pass [http://172.1<wbr>68.1.93:8009](http://172.168.1.93:8009/); # PC-Version}

    Proxy_http_Version 1.1;
    Proxy_Set_Header-Upgrade $http_upgrade;
    proxy_set_header Verbindung „Upgrade“;
    Proxy_Set_Header Host $host;
    Proxy-Cache-Bypass $http_upgrade;
  }

  Standort ^~/m/ {
    Proxy-Passwort [http://172.1<wbr>68.1.93:8090](http://172.168.1.93:8090/);
    Proxy_http_Version 1.1;
    Proxy_Set_Header-Upgrade $http_upgrade;
    proxy_set_header Verbindung „Upgrade“;
    Proxy_Set_Header Host $host;
    Proxy-Cache-Bypass $http_upgrade;
  }
}

4. Softverbindungen konfigurieren und anzeigen

5. Ändern Sie die Hosts-Datei von Ubuntu.

Stellen Sie sicher, dass der Domänenname 995.com der IP-Adresse des lokalen Windows-Computers oder 127.0.0.1 entspricht.

C:\Windows\System32\drivers\etc 

Wenn der benutzerdefinierte Domänenname nach dem Neustart immer noch nicht normal aufgelöst werden kann, wird empfohlen, die Hosts-Datei des Windows-Computers zu konfigurieren.

Der Katalog ist hier

C:\Windows\System32\drivers\etc

Dies ist meine Hosts-Datei in Windows:

# Copyright (c) 1993-2009 Microsoft Corp.
#
# Dies ist eine Beispiel-HOSTS-Datei, die von Microsoft TCP/IP für Windows verwendet wird.
#
# Diese Datei enthält die Zuordnungen von IP-Adressen zu Hostnamen.
# Eintrag sollte in einer eigenen Zeile stehen. Die IP-Adresse sollte
# muss in die erste Spalte eingefügt werden, gefolgt vom entsprechenden Hostnamen.
# Die IP-Adresse und der Hostname sollten durch mindestens eins getrennt sein
# Raum.
#
# Zusätzlich können Kommentare (wie diese) auf einzelnen
# Zeilen oder nach dem Maschinennamen, gekennzeichnet durch ein „#“-Symbol.
#
# Zum Beispiel:
#
# 102.54.94.97 rhino.acme.com # Quellserver
# 38.25.63.10 x.acme.com # x Client-Host

# Die Namensauflösung des lokalen Hosts wird innerhalb des DNS selbst gehandhabt.
# 127.0.0.1 lokaler Host
# ::1 lokaler Host

172.168.1.117 kason995.com
# Die obige Zeile ist für benutzerdefinierte Domänennamendienste.
192.30.255.112 github.com git 
185.31.16.184 github.global.ssl.fastly.net

6. Starten Sie Nginx neu

nginx -s neu laden

7. Verwenden Sie einen benutzerdefinierten Domänennamen in Ubuntu, um den Zugriff auf die PC-Site zu testen.

8. Verwenden Sie einen benutzerdefinierten Domänennamen in Ubuntu, um den Zugriff auf die mobile Site zu testen;

Dies ist das Ende dieses Artikels über die Nginx-Konfiguration zur Trennung von PC- und Mobilsites zur Erzielung einer Umleitung. Weitere relevante Inhalte zur Trennung von PC- und Mobilsites durch Nginx finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • So konfigurieren Sie Nginx, um zwischen dem PC- oder Mobiltelefonzugriff auf verschiedene Domänennamen zu unterscheiden

<<:  Detaillierte Analyse der MySQL-Indizes

>>:  Analyse der Verwendung von MySQL-Abfragesortierung und Abfrageaggregationsfunktionen

Artikel empfehlen

Tiefgreifendes Verständnis mathematischer Ausdrücke in CSS calc()

Der mathematische Ausdruck calc() ist eine Funkti...

Detaillierte Erklärung der MySQL-Zeichenfolgenverkettungsfunktion GROUP_CONCAT

Im vorherigen Artikel habe ich ein tabellenübergr...

MySQL-Variablendeklaration und Analyse gespeicherter Prozeduren

Deklarieren von Variablen Festlegen globaler Vari...

CSS3-Animation zum Erzielen des Streamer-Button-Effekts

Beim Erlernen von CSS3 habe ich festgestellt, das...

So verwenden Sie das VS2022-Remote-Debugging-Tool

Manchmal müssen Sie bei der Arbeit ein Remote-Deb...

RHCE installiert Apache und greift mit einem Browser auf IP zu

1. at ist so konfiguriert, dass nach 5 Stunden „D...

MySQL effiziente Abfrage Left Join und Gruppieren nach (plus Index)

MySQL effiziente Abfrage MySQL verzichtet auf „Gr...

Unterschied und Implementierung von JavaScript Anti-Shake und Throttling

Inhaltsverzeichnis 1. Anti-Shake 2. Drosselung 3....

Zusammenfassung der Dateninteraktion zwischen Docker-Container und Host

Vorwort Beim Einsatz von Docker in einer Produkti...

Zusammenfassung der grundlegenden Verwendung des $-Symbols in Linux

Linux-Version: CentOS 7 [root@azfdbdfsdf230lqdg1b...