Tag: 虚拟目录

访问c#web应用程序中的内容文件

我现在已经有3天这个问题了。 我有一个标记为Content和Always Copy的xml文件。 该文件已复制到: C:\Users\avi\Documents\Visual Studio 2010\Projects\ExpressBroker\ExpressBroker\bin\XMLMetadata\Actions.1.xml 访问文件时: //like that: XDocument actions = XDocument.Load(“bin\\XMLMetadata\\Actions.1.xml”); //or like that: XDocument actions = XDocument.Load(“XMLMetadata\\Actions.1.xml”); //or like that: XDocument actions = XDocument.Load(“Actions.1.xml”); 我得到以下exception: Exception Details: System.IO.DirectoryNotFoundException: Could not find a part of the path ‘C:\Program Files\IIS Express\bin\XMLMetadata\Actions.1.xml’. 为什么在IIS文件夹中搜索过? 我如何访问该文件? 我正在使用IIs Express和VWD2010

覆盖应用程序根URL真的有什么作用?

整个互联网上唯一的地方我可以在MSDN上找到解释: 指定应用程序根URL的备用路径。 如果Web应用程序根目录不是项目的根目录,请使用此选项。 从这里我理解“应用程序根”是在ASP.NET中使用波浪号时检索的路径。 所以我希望如果我去项目的属性 – Web – “覆盖应用程序root”并指定另一个url,那么代字号将映射到该url。 但事实并非如此。 例如,我的Web位于虚拟目录 – http://localhost/WebApplication1和“覆盖应用程序根”上我尝试指定http://localhost/WebApplication2或http://localhost或http://WebApplication2 (全部存在于我的本地IIS)。 现在我写的时候 Response.Redirect(“~/test2/login”); 我希望它能将我重定向到http://localhost/WebApplication2/test2/login 。 但它改为将我重定向到http://localhost/WebApplication1/test2/login ,就像我没有覆盖“应用程序根”一样。 那么这个function真的应该做什么呢? 或者也许它不起作用,因为我遗漏了一些东西并没有正确定义它?

无法访问IIS 8上虚拟dotnet核心api应用程序下的虚拟目录

我正在尝试将虚拟目录添加到我的dotnet核心API。 但它给了我一个404。 This api.project.nl page can’t be found No web page was found for the web address: https://api.project.nl/v1/uploads/profiles/profile.jpeg 我已经在主IIS网站下将我的api设置为v1 ,如下面的IIS项目配置中所示。 api工作正常,我甚至可以访问我的wwwroot的/docs文件夹,它提供index.html (用于自定义swagger ui文档)。 我可以访问Projects – Api文件夹下的uploads文件夹 https://api.project.nl/uploads/profiles/profile.jpeg 但它无法访问v1虚拟应用程序下的uploads文件夹。 https://api.project.nl/v1/uploads/profiles/profile.jpeg 知道为什么吗? 我不确定它是否可能,会对这方面的一些指示表示赞赏。 我已经看到了一些相关的问题,例如这里,但我的配置只是更进一步。 他们谈论UseFileServer ( 文档和他们让它使用它,但我似乎无法让它工作所有。不确定我需要它。 不确定是否需要,但这是我的StartUp.cs public class Startup { public IConfigurationRoot Configuration { get; } public Startup(IHostingEnvironment env) { var builder = new ConfigurationBuilder() […]

如何解析.NET中同一父IIS虚拟目录中不同站点的绝对URL?

我的目标是在多个网站上共享图像,css,js等,这些网站都在IIS中的同一父虚拟目录下托管。 当然,我可以对图像路径进行硬编码,但我希望.NET有一种方法可以使用IIS配置智能地解析URL。 这是我的文件/虚拟目录结构: Parent Site (Virtual Directory) default.aspx mypage.aspx otherpage.aspx images – logo.jpg css – site.css Subsite1 (Virtual Directory) – default.aspx – products.aspx Subsite2 (Virtual Directory) – default.aspx – products.aspx – miscellaneous.aspx Parent Site , Subsite1和Subsite2分别是为http: Subsite2和http://subsite2.com设置的虚拟目录。 我想在这些网站上分享图片,js,css等。 .NET中是否有一个方法可以解析~/images/logo.jpg作为http://sofzh.miximages.com/c%23/logo.jpg从其中一个子网点调用(例如, http : //subsite.com/default .aspx )?

IIS虚拟目录获取带有过期的预签名URL

在IIS中,有没有办法定义某种过滤规则来拒绝访问虚拟目录中的文件,除非请求是由某种加密查询字符串“预先签名”的? 还有一种方法可以使请求过期吗? 我无法找到控制这个的方法。 我正在寻找的东西与Amazon S3 Amazon.S3.Model.GetPreSignedUrlRequest.Expires属性提供的内容非常类似,但在IIS中。 以下是Amazon S3示例代码的链接。 期望目标的情景: 请求: http://MyServerName/MyFolderThatIsAddedAsAVirtualDirectoryToDefaultWebsiteInIIS/MyImage.jpg默认情况下应始终导致“拒绝访问”。 但是,将特定查询字符串附加到请求URL应该可以访问该文件。 此外,我需要URL在一段时间后过期,直到提供新的有效查询字符串。

C#如何在运行时找到WCF IIS部署/虚拟目录来更改日志文件的名称?

我正在尝试根据部署到的IIS虚拟目录的名称更改ac#WCF日志文件的名称。 我尝试使用Directory.GetCurrentDirectory()调用,但它返回目录c:\ windows \ system32 \ inetsrv,无论WCF应用程序部署到哪个虚拟目录。 那么我应该调查VirtualDirectory类? 有关如何查找当前虚拟目录的任何示例代码? 谢谢 !