Der Ort von nginx conf:
location ~/photos/resize/(\d+)/(\d+) {
# Here var1=(\d+), var2=(\d+)
}
Wie erhalte ich Variablen vom Speicherort in Nginx?
Der reguläre Ausdruck funktioniert so ziemlich wie an jedem anderen Ort, an dem er vorhanden ist.
location ~/photos/resize/(\d+)/(\d+) {
# use $1 for the first \d+ and $2 for the second, and so on.
}
Ein Blick auf Beispiele im Nginx-Wiki kann ebenfalls hilfreich sein. http://wiki.nginx.org/Configuration
Zusätzlich zu den vorherigen Antworten können Sie auch die Namen der mit Regex erfassten Gruppen festlegen, damit sie später leichter referenziert werden können.
location ~/photos/resize/(?<width>(\d+))/(?<height>(\d+)) {
# so here you can use the $width and the $height variables
}
sehen NGINX: Überprüfen Sie, ob $ remote_user dem ersten Teil des Speicherorts entspricht für ein Anwendungsbeispiel.
$1 $2 $3
etc verweist auf Werte aus dem verschachtelten regulären Ausdruck und überschreibt den$1 $2 ...
in der äußeren Regex. Einalias /$1
in dem äußere Regex, wird das verwenden$1
von dem innere Regex, was wahrscheinlich dazu führt, dass die Datei nicht gefunden wird.(?<width>\d+)
anstatt(?<width>(\d+))
, oder gibt es einen anderen grund dafür - vielleicht auch zu bekommen$1
ebenso gut wie$width
?Sie können dies versuchen:
quelle