Heim > Fragen und Antworten > Hauptteil
#rewrite .* /index.php last;
rewrite ^/(.*)$ /index.php/ last;
Für diese beiden Codezeilen kann die vorherige Zeile normal verwendet werden, aber die zweite Zeile meldet einen Fehler, sobald sie verwendet wird. ? Gibt es eine Konfiguration, die aktiviert werden muss? Ich habe mir die Dokumentation angesehen und konnte sie nicht finden. . .
曾经蜡笔没有小新2017-05-16 17:22:17
rewrite ^/(.*)$ /index.php/$1 last;
中 $1
代表的是 ^/(.*)$
正则捕获的内容,也就是(.*)
捕获到的内容。
^/(.*)$
中^/
表示已/
开头,.
表示匹配除换行符以外的任意字符,*
表示重复0次或更多次,$
表示匹配字符串的结束,()
表示捕获(匹配)内容。小括号
()
之间匹配的内容,可以在后面通过$1
来引用,$2
表示的是前面第二个()
里的内容。
也就是当一个请求链接为 /test
,就会被重写为/index.php/test
并重定向到/index.php/test
,所以请确保有这样的资源地址 /index.php/test