据我所知,现在首选使用 config.json 文件来存储应用程序的配置设置,这很棒。喜欢 json 格式并发现它更易于阅读。
虽然在发布我的第一个 vNext 应用程序时,我注意到 config.json 文件似乎发布到
approot/src/my_project/config.json
我的网站位于名为 wwwroot
的文件夹中
我的 web 服务器有多个网站设置,每个网站都有自己的“app.config”文件,我可以将其放入网站目录中,其中包含特定于正在运行的网站的设置。但是现在我有两个问题,
config.json 填充到错误目录
如果我将 config.json 文件放入 wwwroot 文件夹,则客户端可以通过浏览器访问它。这是非常危险的。
如果 config.json 在 wwwroot 中,我是否必须设置我的网络服务器以忽略对 config.json 的请求,还是我完全遗漏了什么?
最佳答案
每个项目都应该有一个单独的文件夹。永远不要在 wwwroot 中放置一个您不想提供的文件夹。它最终可能看起来像这样:
/root
/root/Project1
/root/Project1/config.json
/root/Project1/wwwroot
/root/Project2
/root/Project2/config.json
/root/Project2/wwwwroot
显然,您的结构不必完全匹配。一般来说,如果您使用单独的目录来分隔您的项目,并且不将您的配置放在您的 wwwroot 中,您会没事的。
顺便说一下,您可能希望首先避免在 config.json 文件中包含任何 secret 。您应该使用源代码控制软件,并且您应该避免 checkin secret 内容的情况。可能是环境变量或 secrets API .
关于c# - wwwroot 中的 vNext/.NET5 config.json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33151690/