So konfigurieren Sie den Pathinfo-Modus in Nginx
Grund
Ich habe Apache schon lange nicht mehr verwendet und fühle mich allmählich mit Apache nicht mehr vertraut, weil ein Freund ein Zendframework-Framework hat, das von Apache nach Nginx verschoben wurde und Unterstützung im Pathinfo-Modus erfordert.
Suchen Sie online in Shanghai
Also begann ich, nach Artikeln zu suchen, die sich auf Nginx + Pathinfo beziehen. Zuerst dachte ich, es wäre einfach, es zu konfigurieren. Nach der Suche habe ich festgestellt, dass es viele Artikel gibt, in denen Nginx vorgestellt wird, um den Pathinfo-Modus zu aktivieren, und es scheint, dass dies nicht schwierig ist. Aber nach mehreren Stunden ist es immer noch nicht richtig konfiguriert. Und der Inhalt vieler Artikel ist sehr ähnlich und sie werden grundsätzlich nachgedruckt.
Ich fange an, ein wenig ängstlich zu werden! Denn ein Tag ist vergangen und die Vorbereitung ist noch nicht abgeschlossen.
Weiter suchen
Keine Wahl, weitersuchen. Zur Vereinfachung der Überprüfung habe ich a.com verwendet, um das thinkphp-Framework herunterzuladen und eine Umgebung einzurichten. Und fügte die Controller-Klasse useraction.class.php hinzu, fügte der Klasse eine App-Methode hinzu und gab eine Textzeile aus.
Also begann ich, die Datei nginx.conf ständig neu zu schreiben, nginx neu zu starten und die Adresse a.com/index.php/user/app ständig zu aktualisieren. Das Ergebnis ist entweder eine Eingabeaufforderung zur Adressbeschädigung, 502, oder eine Zugriffserkennung.
Ein weiterer Tag verging und ich begann, ein wenig zu zögern.
Endlich durchgehalten
Logisch gesehen bin ich der Meinung, dass es einen Präzedenzfall für Nginx + Thinkphp geben sollte, aber ich habe nicht nach der Antwort gesucht. Plötzlich fühle ich mich im Internet so verwirrt und kann auf eine kleine Frage keine Antwort finden. Heute Abend habe ich erneut versucht, die Nginx-Thinkphp-Schlüsselwortsuche zu verwenden. Nachdem ich auf mehr als zehn Seiten geklickt hatte, habe ich einen Code gefunden. Der Code lautet wie folgt:
include fcgi.conf;
set $real_script_name $fastcgi_script_name;
if ($fastcgi_script_name ~ "^(.+?.php)(/.+)$") {
set $ real_script_name $1;
set $path_info $2;
}
fastcgi_param script _filename $document_root $ Real_script_name;
Fastcgi_param Script_name $ Real_Script_name; Es wurde angezeigt, dass ich darauf zugreifen konnte, und es wurde schließlich gelöst einfach, einen Atemzug zu nehmen.
Posten Sie den nginx.conf-Code:
Kopieren Sie den Code. Der Code lautet wie folgt:
user www www;
worker_processes 2;
worker_cpu_affinity 01 10;
error_log /data1/logs/nginx_error.log crit;
pid /usr/local/webserver/nginx/nginx.pid;
worker_ rlimit_nofile 65535;
events
{
use epoll;
worker_connections 65535;
}
http
{
include mime.types;
default_type application/octet-stream;
server_names_hash_bucket_size 128;
. client _header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 8m;
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
tcp_nodelay on;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_ timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 128k;
server: umschreiben ^ /(.*)$ /index.php/$1 last;
break;
}
}
location ~ .php {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fcgi.conf;
set $real_script_name $fastcgi_script_name;
if ($fastcgi_script_name ~ "^(.+?.php)(/.+)$") {
set $real_script_name $1;
set $path_info $2;
}
fastcgi_param script_filename $document_root$real_script_name ;
fastcgi_param script_name $real_script_name;
fastcgi_param path_info $path_info;
}
}
}
Das obige ist der detaillierte Inhalt vonSo konfigurieren Sie den Pathinfo-Modus in Nginx. 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



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.

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.

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.

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.

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.

Die Methoden zum Anzeigen des laufenden Status von Nginx sind: Verwenden Sie den Befehl ps, um den Prozessstatus anzuzeigen; Zeigen Sie die nginx -Konfigurationsdatei /etc/nginx/nginx.conf an; Verwenden Sie das Nginx -Statusmodul, um den Statusendpunkt zu aktivieren. Verwenden Sie Überwachungstools wie Prometheus, Zabbix oder Nagios.

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

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.
