So konfigurieren Sie den Standort auf dem Nginx-Server
Syntax
location [=|~|~*|^~] /uri/ {...}
Rules
=: Gibt die genaue URI-Übereinstimmung an (interessierte Schüler können sich den URL- und URI-Unterschied ansehen)
~: Gibt an, dass die Groß-/Kleinschreibung beachtet werden soll.
~*: Zeigt an, dass die Groß-/Kleinschreibung nicht berücksichtigt werden soll.
!~ && !~*: Zeigt an, dass die Groß-/Kleinschreibung nicht berücksichtigt werden muss. Normal und ohne Berücksichtigung der Groß-/Kleinschreibung.
/: Universeller Abgleich, beliebig Die Anfrage wird mit dem
Standortübereinstimmungsziel
abgeglichen. Der Standortübereinstimmungstest verwendet nur den Anforderungs-URI-Teil, nicht den Parameterteil. (Grund: Es gibt zu viele Möglichkeiten, Parameter zu schreiben und sie können nicht genau abgeglichen werden)
Standortübereinstimmungsreihenfolge
Unter der Voraussetzung mehrerer Standortkonfigurationen ist die Standortübereinstimmungsreihenfolge (nicht überprüft, hehe, bei Google gesucht)
1. Zuerst abgleichen =
2. Als nächstes führen Sie den regulären Abgleich gemäß der Reihenfolge der Konfigurationsdatei durch,
4. Übergeben Sie ihn schließlich an / für den allgemeinen Abgleich Erfolgreicher Abgleich: Stoppen Sie den Abgleich und befolgen Sie die aktuellen Abgleichsregeln. Die nginx-Konfigurationsdatei ist von unten nach oben in drei hierarchische Strukturen unterteilt:
| Level V-Standortblock ermöglicht die angeforderte URI
nginx. Der Benutzer definiert den Standortblock und gibt ein passendes Muster an, um mit einem bestimmten URI übereinzustimmen. Neben einfachen Zeichenfolgen (z. B. Dateisystempfaden) sind auch komplexere Übereinstimmungsmuster zulässig. Die grundlegende Syntaxform des
location [=|~|~*|^~|@] pattern { ... }
[=|~|~*|^~|@] wird als Standortmodifikator bezeichnet, der definiert, wie Nginx mit dem nachfolgenden Muster übereinstimmt, und das grundlegendste Musterattribut (einfache Zeichenfolge oder regulärer Ausdruck).
Über den Standortmodifikator
1. =
Beispiel:
server { server_name jb51.net; location = /abcd { […] } }
http://jb51.net/abcd # Stimmt genau überein http://jb51.net/abcd # Wenn das System, auf dem der Nginx-Server ausgeführt wird, die Groß-/Kleinschreibung nicht beachtet, wie z. B. Windows, dann stimmt es auch überein http://jb51.net/abcd?param1?m2 # Ignorieren Sie die Argumente der Abfragezeichenfolge, hier ist das ?param1?m2 nach /abcd http://jb51.net/abcd/ # Stimmt nicht überein, weil Am Ende steht ein Schrägstrich. Nginx betrachtet diese Situation nicht als vollständige Übereinstimmung. http://jb51.net/abcde # Stimmt nicht überein, da es sich nicht um eine vollständige Übereinstimmung handelt
Sie müssen keinen Standortmodifikator schreiben, Nginx kann trotzdem mit dem Muster übereinstimmen. Passen Sie in diesem Fall die URIs an, die mit dem angegebenen Muster beginnen. Beachten Sie, dass es sich bei den URIs hier nur um gewöhnliche Zeichenfolgen handeln kann und keine regulären Ausdrücke verwendet werden können.Beispiel:
server { server_name website.com; location /abcd { […] } }
http://jb51.net/abcd # Stimmt genau überein
http://jb51.net/abcd # Wenn das System, auf dem der Nginx-Server ausgeführt wird, die Groß-/Kleinschreibung nicht beachtet, wie z. B. Windows, dann stimmt es auch überein
http://jb51.net/abcd?param1?m2 # Ignorieren Sie die Argumente der Abfragezeichenfolge, hier ist das ?param1?m2 nach /abcd http://jb51.net/abcd/ # Der abschließende Schrägstrich bei das Ende liegt ebenfalls im passenden Bereich
http://jb51.net/abcde # Es stimmt immer noch überein, da die URI mit dem Muster
example:
server {
server_name jb51.net;
location ~ ^/abcd$ {
[…]
}
}
Übereinstimmungssituation: http://jb51.net/abcd # Exakte Übereinstimmung
http://jb51.net/abcd # Keine Übereinstimmung, ~ unterscheidet zwischen Groß- und Kleinschreibung
http://jb51.net/ abcd?param1?m2 # Ignorieren Sie die Abfragezeichenfolgenargumente, hier ist ?param1?m2 nach /abcd http://jb51.net/abcd/ # Stimmt nicht überein, da am Ende ein Schrägstrich steht, ist dies nicht der Fall Übereinstimmung mit dem regulären Ausdruck^/abcd$
4. ~*
与 ~ 类似,但这个 location modifier 不区分大小写,pattern 须是正则表达式
example:
server { server_name website.com; location ~* ^/abcd$ { […] } }
匹配情况:
http://jb51.net/abcd # 完全匹配
http://jb51.net/abcd # 匹配,这就是它不区分大小写的特性
http://jb51.net/abcd?param1?m2 # 忽略查询串参数(query string arguments),这里就是 /abcd 后面的 ?param1?m2
http://jb51.net/abcd/ # 不匹配,因为末尾存在反斜杠(trailing slash),并不匹配正则表达式 ^/abcd$
http://jb51.net/abcde # 不匹配正则表达式 ^/abcd$
5. ^~
匹配情况类似 2. (none) 的情况,以指定匹配模式开头的 uri 被匹配,不同的是,一旦匹配成功,那么 nginx 就停止去寻找其他的 location 块进行匹配了(与 location 匹配顺序有关)
6. @
用于定义一个 location 块,且该块不能被外部 client 所访问,只能被 nginx 内部配置指令所访问,比如 try_files or error_page
演示实例
产生的效果如下:
访问根目录/,匹配到location /
访问除hello.php之外的其它php程序,匹配到location ~ \.php$,并且用php5-fpm去运行
访问hello.php,匹配到location = /hello.php,访问被重定向到好联系官网
Das obige ist der detaillierte Inhalt vonSo konfigurieren Sie den Standort auf dem Nginx-Server. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Verwenden Sie unter Linux den folgenden Befehl, um zu überprüfen, ob Nginx gestartet wird: SystemCTL -Status Nginx Richter basierend auf der Befehlsausgabe: Wenn "aktiv: aktiv (lief) angezeigt wird, wird Nginx gestartet. Wenn "Active: Inactive (Dead)" angezeigt wird, wird Nginx gestoppt.

Wie konfiguriere ich Nginx in Windows? Installieren Sie NGINX und erstellen Sie eine virtuelle Hostkonfiguration. Ändern Sie die Hauptkonfigurationsdatei und geben Sie die Konfiguration der virtuellen Host ein. Starten oder laden Nginx neu. Testen Sie die Konfiguration und sehen Sie sich die Website an. Aktivieren Sie selektiv SSL und konfigurieren Sie SSL -Zertifikate. Stellen Sie die Firewall selektiv fest, damit Port 80 und 443 Verkehr.

Schritte zum Starten von Nginx unter Linux: Überprüfen Sie, ob Nginx installiert ist. Verwenden Sie SystemCTL Start Nginx, um den Nginx -Dienst zu starten. Verwenden Sie SystemCTL aktivieren NGINX, um das automatische Start von NGINX beim Systemstart zu aktivieren. Verwenden Sie den SystemCTL -Status NGINX, um zu überprüfen, ob das Startup erfolgreich ist. Besuchen Sie http: // localhost in einem Webbrowser, um die Standard -Begrüßungsseite anzuzeigen.

So bestätigen Sie, ob Nginx gestartet wird: 1. Verwenden Sie die Befehlszeile: SystemCTL Status Nginx (Linux/Unix), Netstat -ano | FindStr 80 (Windows); 2. Überprüfen Sie, ob Port 80 geöffnet ist; 3. Überprüfen Sie die Nginx -Startmeldung im Systemprotokoll. 4. Verwenden Sie Tools von Drittanbietern wie Nagios, Zabbix und Icinga.

Es gibt zwei Möglichkeiten, das Problem mit dem Cross-Domain-Problem mit dem NGINX-Problem zu lösen: Änderungen der Cross-Domänen-Antwort-Header: Fügen Sie Anweisungen hinzu, um Cross-Domain-Anforderungen zu ermöglichen, zulässigen Methoden und Header anzugeben und die Cache-Zeit festzulegen. Verwenden Sie das CORS-Modul: Aktivieren Sie Module und konfigurieren Sie die CORS-Regeln, um Cross-Domain-Anforderungen, Methoden, Header und Cache-Zeit zu ermöglichen.

Der Server verfügt nicht über die Berechtigung, auf die angeforderte Ressource zuzugreifen, was zu einem NGINX 403 -Fehler führt. Zu den Lösungen gehören: Überprüfung der Dateiberechtigungen. Überprüfen Sie die Konfiguration .htaccess. Überprüfen Sie die Nginx -Konfiguration. Konfigurieren Sie Selinux -Berechtigungen. Überprüfen Sie die Firewall -Regeln. Fehlerbehebung bei anderen Ursachen wie Browserproblemen, Serverausfällen oder anderen möglichen Fehlern.

Wie fixiere ich Nginx 403 Verbotener Fehler? Überprüfen Sie die Datei- oder Verzeichnisberechtigungen; 2.Htaccess -Datei prüfen; 3. Überprüfen Sie die Konfigurationsdatei der Nginx; 4. Starten Sie Nginx neu. Weitere mögliche Ursachen sind Firewall -Regeln, Selinux -Einstellungen oder Anwendungsprobleme.

Das Starten eines Nginx-Servers erfordert unterschiedliche Schritte gemäß verschiedenen Betriebssystemen: Linux/UNIX-System: Installieren Sie das NGINX-Paket (z. B. mit APT-Get oder Yum). Verwenden Sie SystemCTL, um einen Nginx -Dienst zu starten (z. B. sudo systemctl start nginx). Windows -System: Laden Sie Windows -Binärdateien herunter und installieren Sie sie. Starten Sie Nginx mit der ausführbaren Datei nginx.exe (z. B. nginx.exe -c conf \ nginx.conf). Unabhängig davon, welches Betriebssystem Sie verwenden, können Sie auf die Server -IP zugreifen
