1.查看网站列表

C:\Program Files (x86)\Microsoft Visual Studio 12.0>"C:\Program Files\IIS Express\appcmd.exe" list site

     

  2.启动网站   根据网站id启动网站

C:\Program Files (x86)\Microsoft Visual Studio 12.0>"C:\Program Files\IIS Express\iisexpress.exe" /siteid:96

 另一种启动网站方式:

cmd以管理员方式运行,第一步:cd C:\Program Files\IIS Express (一般情况下是这个位置)

第二步输入:iisexpress /config:"C:\Users\zhangchunxiao\Documents\IISExpress\config\applicationhost.config" /site:FamilyLibrary /systray:true

其中 /config:"C:\Users\zhangchunxiao\Documents\IISExpress\config\applicationhost.config"  是applicationhost.config所在的路径,/site:FamilyLibrary  是站点名称

2.配置文件

    默认情况下IIS Express使用的配置文件位于“我的文档”中,路径如下:“我的文档\IIS Express\Config”。其中,applicationhost.config 是核心的配置文件,它用于承载站点的定义、应用程序和应用程序池以及整个WEB服务器的配置。由于是放在我的文档中的,所以修改它不需要管理员权限,意味着可以直接修改。在修改后,下次启动应用程序就会起效。

  在applicationhost.config内容中,<system.applicationHost> 用于定义网站和应用程序池。默认情况下,其内容如下:

<system.applicationHost>
<applicationPools>
<add name="Clr4IntegratedAppPool" managedRuntimeVersion="v4.0" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />
<add name="Clr4ClassicAppPool" managedRuntimeVersion="v4.0" managedPipelineMode="Classic" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />
<add name="Clr2IntegratedAppPool" managedRuntimeVersion="v2.0" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />
<add name="Clr2ClassicAppPool" managedRuntimeVersion="v2.0" managedPipelineMode="Classic" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />
<add name="UnmanagedClassicAppPool" managedRuntimeVersion="" managedPipelineMode="Classic" autoStart="true" />
<applicationPoolDefaults managedRuntimeLoader="v4.0">
<processModel />
</applicationPoolDefaults>
</applicationPools>
<!-- The <listenerAdapters> section defines the protocols with which the
Windows Process Activation Service (WAS) binds. -->
<listenerAdapters>
<add name="http" />
</listenerAdapters>
<sites>
<site name="WebSite1" id="1" serverAutoStart="true">
<application path="/">
<virtualDirectory path="/" physicalPath="%IIS_SITES_HOME%\WebSite1" />
</application>
<bindings>
<binding protocol="http" bindingInformation=":8080:localhost" />
</bindings>
</site>
<applicationDefaults applicationPool="Clr4IntegratedAppPool" />
<virtualDirectoryDefaults allowSubDirConfig="true" />
</sites>
<webLimits />
</system.applicationHost>

 

IIS Express 内建了五个应用程序池,分别对应.Net 2.0/4.0的集成/经典模式、以及一个非托管程序池。默认的程序池版本有 <spplicationPoolDefaults> 节来配置。<sites> 节用于配置网站。网站的默认应用程序池和虚拟目录默认配置由 <applicationDefaults> 和 <virtualDirectoryDefaults> 节点配置。以上的节点默认情况下我们并不需要太多关注,因为大多数情况下我们需要关注的只有 <sites> 下的 <site> 节点,这里保存了网站、应用程序的定义,才是我们需要真正关心的。

  【1】.每个 <site> 就是一个网站。

  serverAutoStart 设置了是否随着 IIS Express的启动而自动启动。如果设置为true,那么每次 IIS Express 启动都会自动加载(如果没有指定网站的话),否则只有以指定特定网站的模式运行时才会加载。

  使用IIS Express加载特定网站的语法一: IISExpress.exe /site:<站点名>

  使用IIS Express加载特定网站的语法二: IISExpress.exe /siteid:<id>

  

  【2】.<site> 下的<bindings>设置了这个站点的绑定信息。

   节点下的每个<binding>都是一个端口绑定信息。典型的绑定配置如下:<binding protocol="http" bindingInformation="*:8080:localhost" />

   protocol 指定了绑定的协议类型(IIS Express内建了 HTTP 和 HTTPS两种协议支持),而“*:8080:localhost”则指定的绑定的具体信息,它有三个部分组成:“绑定的IP:端口:主机名”。

   默认情况下,绑定到任何本地IP、非保留端口、绑定到localhost。

  

  IIS Express 默认只支持本地连接,不能用ip去访问。

  注意,修改配置文件后,在命令行窗口输入q退出,然后重新加载才生效。【在同一机器测试】

  另外,在书上看到另外一种局域网访问的配置,这里仅记录下

开启外部连接
netsh http add urlacl url=http://*:{端口号}/ user=everyone
关闭外部连接
netsh http delete urlacl url=http://*:{端口号}/

  【3】 <application> 这个节设置了网站的应用程序

  每个网站都需要至少一个映射路径为“/”应用程序(它映射到根目录)。除此之外,你可以继续添加并行的不同路径的 <application> ,这就类似于IIS中的网站里配置的应用程序。

  例如,我需要添加一个单独的应用程序 - 论坛,映射到根目录下的bbs目录,那么我就可以这样配置:

<site name="BM.Admin(1)" id="96">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="G:\01code\04MVC\01bamin\Code\BaminSolution\BM.Admin" />
</application>
<application path="/bbs" applicationPool="Clr2IntegratedAppPool">
<virtualDirectory path="/" physicalPath="<此应用程序的根目录>" />
<virtualDirectory path="/content/" physicalPath="</bbs/content/目录对应的虚拟目录>" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:44545:localhost" />
</bindings>
</site>

  【4】<virtualDirectory> 设置了目录的映射信息

  参见上面展示的代码。在每个<application>节下,必须至少存在一个 path="/" 的 virtualDirectory,它代表了这个目录映射的位置。除此之外,可以手动添加多个映射的路径不同的虚拟目录。

   一份关于site详细配置放在文章尾部,作为附录以便以后使用

 Site详细配置

<sites>
<!-- site 站点 如果启动了右击托盘IISExpress就能看到,可以在sites下面添加多个site节点 serverAutoStart=true 是指定站点是否随服务器启动,但是这个属性我并没有看到作用,不管是否设置都是启动第一个站点 -->
<site name="WebSite1" id="1" serverAutoStart="true" >
<!-- application应用程序 和在iis中添加的应用程序一样的-->
<application path="/">
<!-- virtualDirectory虚拟目录 %IIS_SITES_HOME%是C:\Program Files\IIS Express\ -->
<virtualDirectory path="/" physicalPath="%IIS_SITES_HOME%\WebSite1" />
</application>
<!-- 可以添加多个path不重复的application 下面applicationDefaults会默认应用程序池,但是也可以指定应用程序池-->
<!-- 这里有个问题如果applicationPool是Clr2IntegratedAppPool 但sites的applicationDefaults是Clr4IntegratedAppPool,则这个虚拟目录就不能被启动访问
目前我只能通过将applicationDefaults设置为Clr2IntegratedAppPool才可以启动,并不清楚怎么给不同网站 指定不一样的程序池并启动-->
<application path="/test" applicationPool="Clr2IntegratedAppPool">
<!-- 可以添加多个虚拟目录 和iis中添加虚拟目录一样-->
<virtualDirectory path="/" physicalPath="%IIS_SITES_HOME%\WebSite1" />
<virtualDirectory path="/testvir" physicalPath="%IIS_SITES_HOME%\WebSite1" />
</application>
<bindings>
<!-- binding站点绑定信息 protocol有http和https两种 bindingInformation指定绑定具体信息 :8080:localhost=>:端口:主机名" -->
<binding protocol="http" bindingInformation=":8080:localhost" />
<!-- 同一个网站绑定多个端口 -->
<binding protocol="http" bindingInformation=":8899:localhost" />
<!-- 通常在IIS发布的网站 用localhost 也一定可以用127.0.01访问 但是这里不行,必须手工绑定 -->
<binding protocol="http" bindingInformation=":8080:127.0.0.1" />
<!-- 局域网对应的IP地址也是需要自己绑定的 局域网其他用户才能通过ip访问-->
<binding protocol="http" bindingInformation=":8080:192.168.230.128" />
</bindings>
</site>
<!-- 可以添加多个site节点 但是必须是name和id 都不重复的-->
<site name="WebSite2" id="2" serverAutoStart="true" >
<application path="/test">
<virtualDirectory path="/" physicalPath="%IIS_SITES_HOME%\WebSite1" />
</application>
<bindings>
<binding protocol="http" bindingInformation=":8080:localhost" />
</bindings>
</site>
<siteDefaults>
<!-- %IIS_USER_HOME%是"我的文档"的路径 Logs下是访问站点的记录 -->
<logFile logFormat="W3C" directory="%IIS_USER_HOME%\Logs" />
<traceFailedRequestsLogging directory="%IIS_USER_HOME%\TraceLogFiles" enabled="true" maxLogFileSizeKB="1024" />
</siteDefaults>
<!--applicationDefaults 指定站点的默认应用程序池 在sites上面有applicationPools节点,可以在那看到有五个应用程序池,分别是.Net2.0/4.0的集成/经典模式、以及一个非托管程序池-->
<applicationDefaults applicationPool="Clr4IntegratedAppPool" />
<virtualDirectoryDefaults allowSubDirConfig="true" />
</sites>

摘抄自:https://www.cnblogs.com/xcsn/p/8232664.html#h3_1_3

iis express添加网站,并启动的更多相关文章

  1. windows server 2008 R2服务器安装IIS并添加网站

    一.连接远程计算机 1.因为我的电脑是win7系统,故这里以win7为例,其他windows系统大同小异,首先点开开始菜单栏,在windows附件下找到远程桌面连接 或者采用通用的方法,利用快捷键wi ...

  2. IIS Express 添加MIME映射

    IIS Express没有提供图形化界面来配置MIME类型,但提供了配置MIME类型的命令行工具. IIS Express中添加MIME映射.操作如下: 在DOS窗口下进入IIS Express安装目 ...

  3. windows8 安装IIS 和 添加网站(转)

    Internet Information Services(IIS,互联网信息服务),是由微软公司提供的基于运行Microsoft Windows的互联网基本服务.最初是Windows NT版本的可选 ...

  4. iis express添加虚拟目录

    在调试WEB时,还是使用IIS EXPRESS比较方便, 在IIS中,选择网站,右击,添加虚拟目录或者应用程序,就能添加虚拟目录了.. 在IIS EXPRESS中,添加虚拟目录如下 1.右击IIS E ...

  5. 为IIS Express添加MIME映射

    VS2013自带IIS Express,无法发布JSON文件,需添加MIME映射. 没有图形界面,只能命令行. 进入C:\Program Files(x86)\IIS Express文件夹,输入:ap ...

  6. VS2013 IIS Express 添加MIME映射

    VS2013,则可以直接在IIS Express中添加MIME映射.操作如下: 1.在DOS窗口下进入IIS Express安装目录,默认是“C:\Program Files\IIS Express” ...

  7. IIS Express添加MIME映射

    最近在使用fontawesome字体时,在浏览器控制台看到 fontawesome-webfont.woff2?v=4.3.0 无法访问的错误,检查了一下文件确实存在并且路径也对,这就奇怪了! 在控制 ...

  8. IIS服务器添加网站

    1.添加IIS服务:对“我的电脑”右键,管理,点击服务和应用程序,如果下面没有”Internet Information Services(IIS)管理器“,打开控制面板,点击程序,启用或者关闭Win ...

  9. 使用IIS Express调试网站的方法

    如果不想安装IIS,可以直接使用IIS Express来运行网站. vs2012: 新建个文档,拷贝下面代码 taskkill /F /IM "WebDev.WebServer40.EXE& ...

  10. IIS/VS IIS Express 添加MIME映射 svg、woff、woff2、json

    出现问题 页面提示 font-awesome/fonts/fontawesome-webfont.woff2?v=4.3.0 Failed to load resource: the server r ...

随机推荐

  1. oracle system 账户被锁或者忘记密码

    首先打开SQL PLUS 然后执行conn /as sysdba,不用输入口令直接登录. 登录成功! 若登录的时候出错,这是由于权限不足. 接下来打开[计算机管理],选择[本地用户和组],展开[组], ...

  2. Unity 使用IO流获取PNG/JPG/GIF/BMP的宽高【转】

    原文链接:https://blog.csdn.net/flj135792468/article/details/107963280?utm_medium=distribute.pc_relevant. ...

  3. 083_SFDC Limit(二) 及良好的开发习惯

    关于常见开发中遇到的limit,应如何处理:https://developer.salesforce.com/page/Apex_Code_Best_Practices 链接内容很好,就不一一做解释 ...

  4. PHP_递归实现无限级分类

    <?php /** * 递归方法实现无限级别分类 * @param array $list 要生成树形列表的数组[该数组中必须要有主键id 和 父级pid] * @param int $pid= ...

  5. SQL server自动创建日历表。

    做日报功能需要统计每个月的上班天数,节假日因为每年的日期都不一样,所以需要自己手动更新这些节假日 1:首先先自动创建一个日历表,选择开始年月日和结束的年月日 不要同时执行,先执行创建表之后CREATE ...

  6. mysql5.7 不兼容问题

    通过navicat工具导入psc数据库备份文件,报错如下,mysql版本5.7 执行如下语句不通过 DROP TABLE IF EXISTS `guard_user`; CREATE TABLE `g ...

  7. idea启动项目,报java.lang.OutOfMemoryError: PermGen space 和启动项目很慢的问题解决

    启动一个老的项目,报错,查是内存溢出 进入 VM options 加上   -Xms256m -Xmx256m -XX:MaxNewSize=256m -XX:MaxPermSize=256m   在 ...

  8. 我常用的Linux快捷命令

    alias 设置快捷自定义命令 语法: alias 快捷命令='完整命令' 因为可以直接把上述当成一条语句来执行,但是服务器重启之后会失效,被称为临时快捷命令: 但是!将他写入 ~/.bashrc 文 ...

  9. gitlab 配置汉化版

    转载 https://blog.csdn.net/qq_44895681/article/details/123277087

  10. (0303)怎么在sequence中调用agent中的函数以及如何快速实验你的想法?

    https://mp.weixin.qq.com/s/9hDz9-nur5szBib18_yPnA