我正在通过 nginx 提供一个静态站点。
location ~* \.(avi|bin|bmp|dmg|doc|docx|dpkg|exe|flv|gif|htm|html|ico|ics|img|jpeg|jpg|m2a|m2v|mov|mp3|mp4|mpeg|mpg|msi|pdf|pkg|png|ppt|pptx|ps|rar|rss|rtf|swf|tif|tiff|txt|wmv|xhtml|xls|xml|zip)$ {
root /var/www/html1;
access_log off;
expires 1d;
}
我的目标是排除像http://connect1.webinar.ru/converter/task/
. 全视图就像http://mydomain.tld/converter/task/setComplete/fid/34330/fn/7c2cfed32ec2eef6788e728fa46f7a80.ppt.swf
。尽管这些 URL 以这种格式结尾,但它们不是静态的,而是伪造的脚本请求,所以我对它们有疑问。
做这个的最好方式是什么?我如何为这个 URL 添加一个排除项,或者我可以从这个 Nginx 位置的列表中排除特定的文件扩展名(.ppt.swf,pptx.swf)?
谢谢。
由于您在静态文件的位置使用正则表达式,因此您只需向其添加
!pptx?\.swf
条件并排除条件swf
您的位置将如下所示:
并且不要忘记为
*.swf
文件添加单独的位置:.
您可以在 NGINX 配置中使用此代码排除特定文件或文件夹。
如果要排除特定文件,请添加此代码
如果你想忽略特定的文件夹添加这个
参考:-忽略或排除 NGINX 中的特定文件或完整文件夹