ASP.NET Core似乎在.exe文件中打包了一个Kestrel服务。
我在IIS中查看托管ASP.NET核心应用程序的所有instructions似乎都引用了DLL中的入口点(Main()方法)。
如何暂存.exe文件以便IIS识别它?
我没有看到发布过程的那一部分,我认为这将是一个非常常见的步骤,因为这是ASP.NET Core的默认输出。
答案 0 :(得分:3)
我们通过在web.config文件中添加以下内容来完成此操作。请注意processPath属性。
^
答案 1 :(得分:-1)
首先创建一个没有托管代码的AppPool:
然后在IIS中创建一个网站,我将其设置为端口8888(因为默认网站使用端口80)将其指向Web发布目录:
网站使用的AppPool没有托管代码:
在Web.Config中:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="dotnet" arguments=".\AdviserPaymentList.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />
</system.webServer>
</configuration>
然后浏览到http://localhost:8888/Home,任何问题都会查看日志。