节点自动为顶级请求创建静态文件

问题描述 投票:0回答:1

我有一个 React 应用程序部署到 Azure 应用服务。访问应用程序时,如果我输入基本 URL,后跟空格和文件名,它会将我重定向到适当的页面,但它也会在源中创建一个文件。例如

https://myportal.myapp.net/ .testfile
正在源中创建一个名为
.testfile
的文件(参见屏幕截图):

是什么导致了这种行为?我该如何预防?我无法判断这是否是 webpack、节点或应用程序服务问题,它将该文件视为要提供的静态资产。

reactjs node.js webpack azure-web-app-service
1个回答
0
投票

当您访问基本 URL 后跟空格和文件名时,它似乎正在源中创建一个文件。此行为与 Azure 应用服务无关。它实际上是现代浏览器的一项功能,当请求不存在的文件时,会自动在开发人员工具的源选项卡中创建文件。

此功能对于调试目的很有用,但也可能会产生误导。在您的情况下,浏览器似乎将“.testfile”解释为文件扩展名并创建具有该名称的文件。

为了防止这种行为,您可以尝试在基本 URL 中添加尾部斜杠。这将告诉浏览器该 URL 是一个目录而不是文件。例如,不要访问“https://myportal.myapp.net/.testfile”,而是尝试访问“https://myportal.myapp.net/.testfile”。

如果这不起作用,您可以尝试将服务器配置为在请求不存在的文件时返回 404 错误。这将阻止浏览器在源选项卡中创建文件。

© www.soinside.com 2019 - 2024. All rights reserved.