问题标签 [wwwroot]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
azure - Azure 应用服务部署不提供正确的文件
这可能是一个小的配置更改,但我是 Azure 的新手。我运行了成功完成的部署管道到 URL http://eli-optical-illusion.azurewebsites.net/。但是当我点击链接时,我仍然得到默认的 Node.js 屏幕。但是,深入目录结构并使用链接https://eli-optical-illusion.scm.azurewebsites.net/wwwroot/,我可以看到我想看到的页面。我错过了什么?
.net-core - contentrootpath 指向 C:/Program Files/IISExpress
我有一个网络应用程序.NET Core 2.2
。Program.cs
当我运行这个应用程序时,我可以在、和下看到它指向,context.HostingEnvironment
而它应该指向我在应用程序中拥有的文件夹。相同的应用程序适用于其他开发人员。有人可以告诉我我做错了什么吗?webrootpath is null
contentfolder
C:/Program Files/IISExpress
wwwroot
asp.net - asp.net 核心存储图像 wwwroot docker
我有一个 .net 6 web api。
当用户上传图像时,它应该存储在 wwwroot 文件夹中。
当我运行 docker 时,我从后端收到此错误:
这是我的 Docker 文件:
如何创建 wwwRoot 卷并在其中存储用户在运行时上传的图像?
- 卷将在 Heroku 中,因为 docker 映像也将在那里
.net - 使用 Microsoft.NET.Sdk.Web 作为库项目时的发布限制
当我从 .NET 模板创建 ASP.NET Core 托管的 Blazor 应用程序时,我得到如下信息:
- WebHost项目(Microsoft.NET.Sdk.Web,Exe 输出类型)
- BlazorApp项目(Microsoft.NET.Sdk.BlazorWebAssembly,Exe 输出类型)
我可以轻松地dotnet publish
在WebHost项目上运行,并将获得一个托管 Blazor Web 应用程序所有内容的可执行文件。
因此,如果我想添加一个服务器配置 UI,例如使用 WPF,我最终会得到这样的结果。(WebHost 项目现在是一个库,由 ServerUI 使用/引用)
- 服务器界面项目
Microsoft.NET.Sdk
与UseWPF
设置一起使用true
OutputType
被设定为WinExe
- 旨在成为(服务器)应用程序入口点的顶级项目
- 包含用于设置服务器的图形用户界面(例如端口、身份验证等)
- 参考WebHost项目
- 网络主机项目
- 用于
Microsoft.NET.Sdk.Web
访问 ASP.NET Core 运行时 OutputType
被设定为Library
- 包含 ASP.NET Core 托管的所有代码
- 参考BlazorApp项目
- 用于
- BlazorApp项目
- 用途
Microsoft.NET.Sdk.BlazorWebAssembly
OutputType
设置为Exe
(默认)- 包含要在浏览器中运行的所有 Blazor Web 应用程序内容
- 用途
如果我现在dotnet publish
在ServerUI项目上运行,我最终会得到一个可执行文件,该可执行文件显示用户界面并拥有 ASP.NET Core 托管内容,但访问 Blazor Web 应用程序将失败,因为wwwroot
文件夹不会以这种方式发布。
现在有两种方法可以解决我知道的这个问题:
- 要么你让ServerUI也使用
Microsoft.NET.Sdk.Web
- 或者您将WebHost或BlazorApp项目显式发布到与ServerUI项目相同的文件夹中。
这让我想到了一个问题,它实际上是否可以Microsoft.NET.Sdk.Web
用于图书馆项目,如果可以,有什么限制。
重现步骤
- 克隆这个repo
- 在签出文件夹中打开终端
- 跑
dotnet publish ServerUI -o bin\publish
wwwroot
目录中将缺少文件bin\publish
夹- 相比之下,运行
dotnet run --project ServerUI
仍将按预期工作,因为它不依赖于发布行为
iis - wwwroot文件夹权限问题
我已经将我的家用电脑(win10)设置为带有 IIS 的网络服务器,仅用于测试/教育目的。我无法编辑在 wwwroot 上创建的 html 文件,因此我进入共享配置并将具有 R/W 权限的用户添加到该文件夹。当我这样做时,我无法访问 localhost/myhtml.html 文件(401 错误)。我已经通过授予所有人权限来纠正这个问题,但这对我来说似乎是一个安全隐患。什么是正确的权限配置,以便我通过网络服务器和代码编辑器访问文件?
windows - wwwroot 中的 mklink 目录在对目录中的文件进行几次迭代更改后停止显示更新的数据
在使用 IIS 作为 Web 服务器的 Windows 10 上,似乎使用 mklink 命令在 wwwroot 下创建的目录有时会停止看到对该目录中的文件所做的更改。以下是我为测试这一点所做的:
我创建了一个目录C:\test,然后使用以下 DOS 命令在C:\inetpub\wwwroot上创建了指向该目录的符号链接:
然后,在C:\test目录中,我创建了一个名为test.html的小 HTML 文件,其内容如下:
然后,在同一台计算机上,我打开 Microsoft Edge 并转到以下页面:
它工作并显示This is a test 1正如预期的那样。然后我修改记事本中的文件以显示This is test 2。它再次起作用。但是,经过几次迭代,在我的情况下,直到This is test 5,浏览器停止显示更新的文件。它只是显示This is test 4。我可以更改文件以显示数字 6、7、8 等,但浏览器停留在This is test 4。
起初我认为这是一个缓存问题,但我在 IIS 中关闭了缓存,问题仍然存在。我什至在禁用缓存后重新启动,它再次开始工作几次迭代,然后再次停止更新。
如果您在C:\inetpub\wwwroot下创建目录test ,那么test不是符号链接并完成上述练习,那么它可以完美地工作,就像它应该做的那样。
为了解决这个问题,我使用以下命令创建了一个批处理文件makelink.bat :
这会强制每五分钟重新创建一次符号链接,这会导致正确的信息再次出现在浏览器中进行多次迭代。显然,这不是一个理想的解决方案。
这是 Windows 10 中的错误还是我做错了什么?