全球主机交流论坛

标题: 【求助】nginx做反向代理时如何缓存所有扩展名的文件 [打印本页]

作者: Sails    时间: 2023-4-3 17:43
标题: 【求助】nginx做反向代理时如何缓存所有扩展名的文件
本帖最后由 Sails 于 2023-4-3 17:45 编辑

目前只会缓存指定扩展名的文件,例如下面的规则
location ~* \.(jpg|js|txt|apk|csv)$
{

如何缓存所有扩展名的文件呢,总不能挨个扩展名都填写上吧?
作者: laoniu0711    时间: 2023-4-3 17:55
location ~* \.(*)$
作者: laoniu0711    时间: 2023-4-3 17:57
正则没用过?
作者: Sails    时间: 2023-4-3 17:58
本帖最后由 Sails 于 2023-4-3 18:03 编辑
laoniu0711 发表于 2023-4-3 17:55
location ~* \.(*)$


大佬,我这样试过,不行,这样不能保存配置,提示错误



nginx: [emerg] pcre_compile() failed: nothing to repeat in "\.(*)$" at "*)$" in /www/server/panel/vhost/nginx/proxy/11.test.cn/f528764d624db129b32c21fbca0cb8d6_11.test.cn.conf:2
nginx: configuration file /www/server/nginx/conf/nginx.conf test failed
作者: laoniu0711    时间: 2023-4-3 18:05


要匹配任意文件扩展名,可以在 `location` 指令中使用正则表达式来实现。例如,使用以下指令:

```
location ~ \. {
    # 匹配任意文件扩展名
    # 在这里添加其他指令
}
```

在上面的例子中,使用了正则表达式 `~ \.` 来匹配所有以点号开头的文件扩展名。这里的反斜杠用于转义点号,因为点号在正则表达式中有特殊含义。

请注意,使用正则表达式可能会对性能产生影响,因此应该谨慎使用。如果您只需要匹配一些特定的文件扩展名,最好使用更具体的指令,例如 `location ~ \.(jpg|png|gif)$` 来匹配图像文件。
作者: laoniu0711    时间: 2023-4-3 21:07
你需要一个chatgpt




欢迎光临 全球主机交流论坛 (https://fd.vvwvv.eu.org/) Powered by Discuz! X3.4