简体   繁体   中英

nginx location regex

I'm setting up nginx and I need to use the location directive to match all requests that begin with /site1 AND end with .php . What regex do I use to do this?

I know I can use ^ to match the beginning of the string and $ to match the end of string. So I'm able to match the beginning of the string OR the end of the string as ^(/site)|(\\.php)$ . Is there any 'and' operator so I can write something like ^(/site)&(\\.php)$ ?

You want this: ^(/site).*(\\.php)$ . This means that first you match the beginning followed by "/site", then anything any number of times , and finally ".php" followed by the end of the string. If you don't need the captures, it would be simpler as: ^/site.*\\.php$ .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM