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

Vue implementiert den Download von ZIP-Dateien

In diesem Artikelbeispiel wird der spezifische Co...

Detaillierte Schritte zur Installation von MySQL 8.0.18-winx64 unter Win10

1. Gehen Sie zunächst auf die offizielle Website,...

Detailliertes Installationstutorial für die MySQL-Zip-Archivversion (5.7.19)

1. Laden Sie die Zip-Archivversion von der offizi...

14 praktische Erfahrungen zur Reduzierung von SCSS-Code um 50 %

Vorwort Sass ist eine Erweiterung der CSS3-Sprach...

Detaillierte Erläuterung der grundlegenden Datentypen in mysql8.0.19

MySQL-Basisdatentypen Übersicht über gängige MySQ...

So deinstallieren Sie MySQL vollständig unter CentOS

Dieser Artikel dokumentiert die vollständige Dein...

Mehrere Möglichkeiten zum Aktualisieren von Batches in MySQL

Normalerweise verwenden wir die folgende SQL-Anwe...

So stellen Sie mit Navicat Premium eine Remoteverbindung zur MySQL-Datenbank her

Derjenige, der eine neue Verbindung herstellt, en...

Beispiel für eine automatische Importmethode für das Vue3.0-Routing

1. Voraussetzungen Wir verwenden zum Importieren ...

So verwenden Sie das MySQL-Limit und lösen das Problem großer Paging-Aufgaben

Vorwort Wenn wir in der täglichen Entwicklung MyS...

Erfahren Sie mehr über die MySQL-Speicher-Engine

Inhaltsverzeichnis Vorwort 1. MySQL-Hauptspeicher...