Ich habe die folgenden Rewrite-Regeln in Sites-available/myapp.conf. Mein Setup ist Nginx, php5-fpm.Rewrite-Regeln funktionieren nicht auf nginx
location/{
try_files $uri $uri/ /index.php;
# also tried
# try_files $uri $uri/ /index.php$is_args$args;
# try_files $uri $uri/ /index.php$args;
}
# also tried
# replacing last with break
rewrite "^/([a-zA-Z]+)/?$" "/index.php?lang=$1" last;
rewrite "^/([a-zA-Z]+)/([a-zA-Z0-9]+)/?$" "/index.php?lang=$1&page=$2" last;
location ~ \.php {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_nam$
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
#fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_pass 127.0.0.1:9000;
}
Ich habe auch versucht, die Rewrite-Regeln in einem @rewrite-Block, aber keinen Erfolg zu wickeln.
location/{
try_files $uri @rewrite;
}
location @rewrite {
#rewrite rules
}
die Variablen manuell Passing funktioniert
index.php?lang=en&page=pageName&type=typeName
Kann jemand bitte diese lösen. Verbringen Sie die ganze Nacht schon, aber kein Glück.
Können Sie uns erklären, was Art von falschem Verhalten passiert, wenn Sie eine URL laden? –
@Dan Getz Es gibt kein falsches Verhalten oder irgendetwas in den Protokollen. Die Rewrite-Regeln funktionieren einfach nicht – Nitin