gpt4 book ai didi

c# - IIS CLI 为我的项目生成带有站点的 applicationhost.config

转载 作者:可可西里 更新时间:2023-11-01 08:27:20 26 4
gpt4 key购买 nike

我有一个包含多个项目的 C# 解决方案,其中一个是由 IIS 运行的 Web 服务器。我设置了<UseGlobalApplicationHostFile>True</UseGlobalApplicationHostFile>在该项目的 csproj 文件中。

当我打开 Visual Studio 时,它会在 ~/Documents/IISExpress/config/applicationhost.config 中生成:

    <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>
<site name="SealingService" id="2">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\Users\sehch\Documents\Paragon\ParagonCore\servers\SealingService\SealingService" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:61800:localhost" />
<binding protocol="https" bindingInformation="*:44300:localhost" />
</bindings>
</site>
<siteDefaults>
<logFile logFormat="W3C" directory="%IIS_USER_HOME%\Logs" />
<traceFailedRequestsLogging directory="%IIS_USER_HOME%\TraceLogFiles" enabled="true" maxLogFileSizeKB="1024" />
</siteDefaults>
<applicationDefaults applicationPool="Clr4IntegratedAppPool" />
<virtualDirectoryDefaults allowSubDirConfig="true" />
</sites>

我希望能够从命令行使用 IIS Express 运行我的项目(用于构建服务器集成测试目的)。如何生成 SealingService从命令行(不打开 Visual Studio)的 applicationhost.config 站点部分?

我试过运行

"C:\Program Files (x86)\IIS Express\iisexpress.exe"

在我的解决方案文件夹中,但它只生成 WebSite1部分。

最佳答案

如果我没理解错的话,您要做的是将您指定的部分添加到 ~/Documents/IISExpress/config/applicationhost.config 文件中。

您可以使用 AppCmd.exe 执行此操作命令行工具:

"C:\Program Files\IIS Express\appcmd.exe" add site /name:SealingService /bindings:"http/*:61800:localhost" /physicalPath:"C:\Users\sehch\Documents\Paragon\ParagonCore\servers\SealingService\SealingService"
"C:\Program Files\IIS Express\appcmd.exe" set site /site.name:SealingService /[path='/'].applicationPool:Clr4IntegratedAppPool
"C:\Program Files\IIS Express\appcmd.exe" set site /site.name:SealingService /+bindings.[protocol='https',bindingInformation='*:44300:localhost']

使用第一个命令,我们创建站点,设置它的http 绑定(bind) 和它的物理路径;对于第二个,我们将其应用程序池设置为所需的;对于第三个,我们添加了https 绑定(bind)

如果您使用 x86 版本的 IIS Express,您可以在 C:\Program Files (x86)\IIS Express\appcmd.exe 中找到 AppCmd

关于c# - IIS CLI 为我的项目生成带有站点的 applicationhost.config,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45640323/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com