Heim  >  Artikel  >  Backend-Entwicklung  >  Nginx-Konfiguration CodeIgniter-Projekt (2)

Nginx-Konfiguration CodeIgniter-Projekt (2)

黄舟
黄舟Original
2016-12-20 13:14:421294Durchsuche

URL-Rewrite-Methode

server { listen 8080; server_name www.xxx.com; root /Users/lch/work/www/ci; error_log /usr/local/var/log/error.log; location ~ ^/(img|images|script|js|css|upload)/ { root /Users/lch/work/www/ci } location ~ { if (!-e $request_filename) { # for /admin rewrite ^/(admin)$ /index.php?c=welcome&m=index&d=$1 break # for /admin/index rewrite ^/(admin)/([ a-zA-Z_]+)$ /index.php?c=$2&m=index&d=$1 break; # for /admin/account/login rewrite ^/(admin+)/([a-zA-Z_]+)/ ([a-zA-Z_]+)$ /index.php?c=$2&m=$3&d=$1 break; ## für allgemeine URL-Umschreibung ^/([a-zA-Z_]+)/([a- zA-Z_]+)/?(.*)$ /index.php?c=$1&m=$2 last; root /Users/lch/work/www/ci; fastcgi_index index.php ; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }

Erklären Sie die obige Konfiguration, da ich einen neuen Ordner „admin“ speziell zum Speichern von Hintergrund-Controllern erstellt habe Besser als normale Pfade erfordern eine weitere Ebene (entsprechend &d=admin). Hier sehen Sie die Mängel der Rewrite-Methode. Wenn eine Situation wie Admin auftritt, müssen die entsprechenden Rewrite-Regeln hinzugefügt werden.

PATH_INFO-Methode

server { listen 8080; server_name www.xxx.com; access_log /usr/local/var/log/snap_access. log; error_log /usr/local/var/log/snap_error.log; location ~ ^/(img|images|script|js|css|upload)/ { root /Users/lch/work/kidulty/snap_www; if (!-e $request_filename) { rewrite ^(.*)$ /index.php/$1 last; } location ~ { set $path_info ""; set $real_script_name $fastcgi_script_name; if ($fastcgi_script_name ~ "^(.+ ?.php)(/.+)$") { set $real_script_name $1; set $path_info $2; } root /Users/lch/work/kidulty/snap_www; fastcgi_pass 127.0.0.1:9001; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$real_script_name; fastcgi_param SCRIPT_NAME $real_script_name; fastcgi_param PATH_INFO; include fastcgi_params; } }

Hinweis:

Wenn die URL im Projekt ähnlich ist wie http:// www.xxx.com/index.php/user/profile erfordert nicht das folgende Umschreiben:

if (!-e $request_filename) { rewrite ^(.*)$ /index.php/$1 last; }

Das Obige ist der Inhalt des Nginx-KonfigurationscodeIgniter-Projekts (2). Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn