Joh*_*oge 122 visual-studio iis-express
有没有办法在IIS express中创建虚拟目录?我知道Cassini不能这样做,如果不使用完整版本的IIS就能做到这一点会很好.
到目前为止我已经知道了我可以在IIS Express中本地浏览我的应用程序,如下所示:
我想要做的是创建一个名为"OffSiteStuff"的虚拟目录,并将其指向我的C驱动器上的某个位置,如"c:\ offsitestuff",然后浏览到该文件夹中的项目,如下所示:
HTTP://本地主机:1132/OffSiteStuff/UserUploadedImage.jpg
我知道我可以使用我的网站中的文件夹进行此操作并仍然使用IIS Express,或者就像普通的旧卡西尼而言,但是此文件夹将存储用户上传的图像,我真的不希望这些图像混淆应用文件.
另一个"走向大"的解决方案是每次我想调试使用异地内容的功能时,将站点部署到一个完整的Server 2008 IIS 7.5实例上,但这也有点麻烦.
有什么方法可以在<System.WebServer />
Web配置元素中执行此操作吗?
Be.*_*St. 127
IIS express配置由applicationhost.config管理.
你可以找到它
用户\ <用户名>\Documents\IISExpress\config文件夹.
在里面,您可以找到包含每个IIS Express配置站点的部分的站点部分.
添加(或修改)这样的网站部分:
<site name="WebSiteWithVirtualDirectory" id="20">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="c:\temp\website1" />
</application>
<application path="/OffSiteStuff" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="d:\temp\SubFolderApp" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:1132:localhost" />
</bindings>
</site>
Run Code Online (Sandbox Code Playgroud)
实际上,您需要在站点中为每个虚拟目录添加新的应用程序标记.您可以获得很大的灵活性,因为您可以为虚拟目录设置不同的配置(例如,不同的.Net Framework版本)
编辑 感谢FevziApaydın指出一个更优雅的解决方案.
您可以通过向Application标记添加一个或多个virtualDirectory标记来实现相同的结果:
<site name="WebSiteWithVirtualDirectory" id="20">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="c:\temp\website1" />
<virtualDirectory path="/OffSiteStuff" physicalPath="d:\temp\SubFolderApp" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:1132:localhost" />
</bindings>
</site>
Run Code Online (Sandbox Code Playgroud)
参考:
小智 91
@ Be.St.的批评是正确的,但不完整.我只是通过纠正不正确的部分来复制他的解释.
IIS express配置由applicationhost.config管理.
你可以找到它
用户\ <用户名>\Documents\IISExpress\config文件夹.
在里面,您可以找到包含每个IIS Express配置站点的部分的站点部分.
添加(或修改)这样的网站部分:
<site name="WebSiteWithVirtualDirectory" id="20">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="c:\temp\website1" />
<virtualDirectory path="/OffSiteStuff" physicalPath="d:\temp\SubFolderApp" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:1132:localhost" />
</bindings>
</site>
Run Code Online (Sandbox Code Playgroud)
您应该只将新的virtualDirectory元素添加到应用程序父元素,而不是添加新的应用程序块.
编辑 - Visual Studio 2015
如果您正在寻找applicationHost.config文件并且您正在使用VS2015,那么您将在以下位置找到它:
[solution_directory] /.VS /配置/的applicationHost.config
小智 6
在VS2013中,我通过以下步骤完成了此操作:
1.右键单击Web应用程序项目,然后单击"属性"
2.查看"属性"页面的"Web"选项卡
3.在服务器下,"IIS Express"是下拉列表的默认选项,在"Project Url"中使用端口号将URL更改为适合您的URL.例如,我删除了端口号,并在localhost之后添加了"/ MVCDemo4".
4.单击"创建虚拟目录"按钮.
5.运行您的项目,将使用新的URL
归档时间: |
|
查看次数: |
96489 次 |
最近记录: |