Nginx路径正则匹配规则配置咨询
Nginx路径正则匹配规则配置咨询
嘿,我把你梳理的Nginx不同路径场景下的location正则匹配配置整理得更清晰啦,方便你参考和调试:
1. 主页面路径匹配
需求:匹配根路径/,以及除phpmyadmin、smf、zDev、DiscordCommunicator、wordpress、Monitor、announcements这些目录之外的所有路径
location ~ (?!phpmyadmin|smf|zDev|DiscordCommunicator|wordpress|Monitor|announcements) { # 此处添加你的业务配置逻辑 }
2. FastCGI动态页面匹配
需求:匹配指定目录(phpmyadmin等)下的PHP文件,路径需以/开头
location ~ (?:phpmyadmin|smf|zDev|DiscordCommunicator|wordpress|Monitor|announcements)\/[a-zA-Z0-9]+\.php { # 此处添加FastCGI相关配置(如转发至PHP-FPM) }
3. 特殊静态资源匹配
需求:匹配指定目录下的各类静态资源文件(JS、HTML、CSS、图片、字体、音视频等)
location = (?:phpmyadmin|smf|zDev|DiscordCommunicator|wordpress|Monitor|announcements)\/([a-zA-Z0-9]+\.(?:js|mhtml|htm?l|css|png|gif|jpg:jpeg:xml|ico|map|webp|svg|woff|woff2|ttf|ttc|otf|eot|mp3|m4a|aac|ogg|midi|wav|mp4|mov|webm|mpe?g|avi|ogv|flv|wmv))$ { # 此处添加静态资源配置(如缓存策略、文件根路径等) }
小提示:这里的正则里
jpg:jpeg:xml看起来可能是分隔符写错了,建议改成jpg|jpeg|xml或者更简洁的jpe?g|xml,避免匹配出错哦
4. 指定目录主入口匹配
需求:匹配指定目录本身(支持目录结尾带/或不带/的情况,比如/phpmyadmin或/phpmyadmin/)
location = (?:phpmyadmin|smf|zDev|DiscordCommunicator|wordpress|Monitor|announcements)(?:\/$|$) { # 此处添加目录入口的配置逻辑(如跳转至默认文件) }
备注:内容来源于stack exchange,提问作者Zorono
相关产品推荐
相关产品推荐

