【问题标题】:Unable To Create Virtual Directory Local IIS无法创建虚拟目录本地 IIS
【发布时间】:2020-12-22 03:53:14
【问题描述】:

我正在尝试让我的后端 API 再次运行,因为我更改了 IP。该目录是虚拟的,其中没有实际文件。

我曾经使用 IIS 设置我的后端并且一切正常,直到我获得一个新的 IP 地址。我进入 IIS 将我的站点更改为新 IP,但是当我尝试在 Visual Studio 中创建虚拟目录时,我不断收到“无法创建虚拟目录”错误消息。我尝试了各种端口,但都不起作用。

我在这里创建的虚拟目录只是一个普通的 Web API,不用于访问存储。

如您所见,我的 IIS 应该配置正常,但 VS 仍然给我错误。想法?

亲切的问候 碧玉

【问题讨论】:

  • 客户端在 IIS 上只有 GUEST 权限。您的虚拟目录必须是客户端具有读取权限(和写入)的网络驱动器。更改属性时,您必须登录 IIS 才能进行更改。
  • 但它和我以前的 IP 工作得很好?
  • 我没有说网络驱动器在 IIS 上。您需要在文件夹允许 GUEST 帐户读/写权限的任何机器上创建一个共享文件夹。网络驱动器是机器上允许共享权限的驱动器。
  • 我使用 admin priv 在 VS 中设置虚拟目录,所以应该没有问题
  • 要么没有到您的 IP 的路由,要么文件夹没有以正确的权限共享。您需要该 IP 地址的管理员权限。在尝试使用 c# 代码之前,我会先使用窗口文件资源管理器进行测试,看看您是否可以访问文件夹和文件。

标签: c# .net iis asp.net-web-api


【解决方案1】:

您可以按照以下步骤进行操作。

  1. 关闭Visual Studio并打开项目文件夹。

  2. 找到“.vs”文件夹(可能是隐藏的),子文件夹中有applicationhost.config文件,打开。

  3. 您可以找到类似于以下内容的站点标记。

    <site name="your project name" id="your site id">
            <application path="/" applicationPool="Clr4IntegratedAppPool">
                <virtualDirectory path="/" physicalPath="your project path" />
            </application> 
            <bindings>
                <binding protocol="http" bindingInformation="your original binding information" /> 
            </bindings>
        </site>
    
  4. 在绑定中添加绑定标签。

      <binding protocol="http" bindingInformation="*:80:192.168.0.196" />
    

这是我的测试结果

【讨论】:

  • 我认为它有效,但这仍然与使用本地 IIS 相同,因为此设置仅适用于 Express IIS
  • 如果选择本地IIS,很抱歉不能通过ip创建虚拟目录,因为本地IIS是针对本地服务器上的iis的。如果要在远程iis上创建虚拟目录,可以选择外部主机
猜你喜欢
  • 1970-01-01
  • 2010-09-20
  • 1970-01-01
  • 1970-01-01
  • 2016-10-06
  • 2012-02-02
  • 1970-01-01
  • 2023-04-04
  • 1970-01-01
相关资源
最近更新 更多