Nginx重定向js.map,css.map

时间:2018-10-31 22:37:48

标签: nginx

我收到服务器日志中不存在的.map文件的多个404错误。例如

/wp-includes/js/tinymce/skins/lightgray/skin.min.css.map
/wp-content/plugins/cornerstone/assets/dist/js/site/cs-head.js.map
/wp-content/plugins/cornerstone/assets/dist/js/site/cs-body.js.map

如何在Nginx上设置重定向,以使以.map结尾的文件重定向到名为404.map的空白文件

在Apache中,可以通过以下方式实现:

RewriteEngine On
Options +FollowSymlinks

    # Prevent 404 Not Found for javascript/css source maps
    RewriteCond %{REQUEST_URI}  (\.map)$
    RewriteRule (.*)  404.map [QSA]

1 个答案:

答案 0 :(得分:1)

使用error_page指令。假设404.map位于文档根目录中,请使用:

location ~ \.map$ {
    error_page 404 /404.map;
}

如果您希望返回404.map文件并返回200状态响应,请使用:

location ~ \.map$ {
    error_page 404 =200 /404.map;
}

有关详细信息,请参见this document


回想起来,error_page可能不是您要寻找的答案。要测试文件是否存在并返回另一个文件(如果不存在),请使用try_files。例如:

location ~ \.map$ {
    try_files $uri /404.map;
}

使用try_files的一个优点是[error]...open()...消息将被抑制。有关详细信息,请参见this document