您的位置:首页 > 其它

IIS Express配置虚拟目录及常用功能配置

2017-04-05 18:21 204 查看
本篇文章主要介绍: 通过配置 IIS Express IIS10.0,实现虚拟目录访问站点。

需求:

当我们的站点足够成熟时,一个域名往往有许多子站点, 这时候需要我们配置虚拟目录;

或者说一个解决方案下,有多个项目共用一个域名时,也需要配置虚拟目录,来访问不同的项目;

解决方案:

上一篇文章中,已经介绍了 使用 通过修改配置文件,实现IIS Express 发布、调试站点,本篇文章继续介绍,创建虚拟目录。

(最新)IIS Express发布网站,实现IP,域名访问站点

创建虚拟目录,仍然需要 修改 applicationhost.config文件(路径:WebApplication.vs\config

//WebApplication 为解决方案名称
//项目结构如下图




//配置如下,需要配置两个项目(WebApplication 和 MainApp),修改配置文件


初始配置



虚拟目录,需求如下:

使用 wys.test.com 为根目录,物理路径为:D:\MyProject\ASP.NET\WebApplication

使用 wys.test.com/web/ (端口号为:20635)对应 WebApp项目,物理路径为:WebApplication\WebApp

使用 wys.test.com/api/ (端口号为:20635)对应WebAPI项目,物理路径为:WebApplication\MainAPI

具体配置,如下图:



配置分析

总体来说,我们如果想要创建虚拟目录,那么很简单,只需要在配置文件中,在Site节点中,增加一个Application节点,在Application节点中,path属性增加虚拟目录就可以了。

<application path="/web" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="D:\MyProject\ASP.NET\WebApplication\WebApp" />
</application>
<application path="/api" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="D:\MyProject\ASP.NET\WebApplication\MainAPI" />
</application>


但是有一个注意的项是,一定要添加 Application节点,不能直接在application节点中,添加一个VituralDirectory节点,这样是会报错的。

下面这样添加节点,配置路径是不对的!!!,会报出如下错误

<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="D:\MyProject\ASP.NET\WebApplication\" />
<virtualDirectory path="/web" physicalPath="D:\MyProject\ASP.NET\WebApplication\WebApp" />
<virtualDirectory path="/api" physicalPath="D:\MyProject\ASP.NET\WebApplication\MainAPI" />
</application>


配置错误

错误内容: “/”应用程序中的服务器错误。 配置错误 说明:

在处理向该请求提供服务所需的配置文件时出错。请检查下面的特定错误详细信息并适当地修改配置文件。 分析器错误消息:

在应用程序级别之外使用注册为 allowDefinition=’MachineToApplication’ 的节是错误的。如果在 IIS

中没有将虚拟目录配置为应用程序,则可能导致此错误。



IIS Express 其他配置

iis 7.5 中常用的配置截图,在 Express版本里,我们都可以找到



一、 打开目录浏览权限,需要修改一下节点,配置完成之后,就可以浏览我们的根目录了

<directoryBrowse enabled="true" />


二、 默认文档修改

<defaultDocument enabled="true">
<files>
<add value="Default.htm" />
<add value="Default.asp" />
<add value="index.htm" />
<add value="index.html" />
<add value="iisstart.htm" />
<add value="default.aspx" />
</files>
</defaultDocument>


总之,我们在 IIS 7.5中,常用的功能,在IIS Express 配置中,都可以找到。只不过相对于 IIS,他没有可视化的界面罢了,但是对于我们直接在 VS中调试还是比较方便的。

关于网站的发布可以参考上一篇文章:

IIS Express发布网站,实现IP,域名访问站点
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息