Asp.net核心部署不在服务器上工作但在机器上工作

Jam*_*317 7 .net c# deployment iis asp.net-core

我正在尝试在服务器上部署asp.net核心应用程序.我已经完成了以下步骤.

首先,这是一个Windows Server 2012 r2环境,它是一个全新的虚拟机.

  1. 构建VM
  2. 更新所有ms更新
  3. 添加iis角色
  4. 保证asp.net 3.5和4.5安装在机器上
  5. 确保安装http重定向和静态内容
  6. 安装.net核心包
  7. 从Visual Studio发布自包含的应用程序(项目名称Web)
  8. 将其添加到服务器上的文件夹中.
  9. 尝试从web.exe运行

我得到控制台应用程序打开说现在正在侦听:http:// localhost:5000 10.我从这台机器上的chrome 转到http:// localhost:5000并找不到404.

我在本地机器上执行步骤7 8 9和10,这是Windows 10我的应用程序.

project.json

  {
      "dependencies": {
        "AutoMapper": "5.1.1",
        "EntityFramework": "6.1.3",
        "Microsoft.ApplicationInsights.AspNetCore": "1.0.0",
        "Microsoft.AspNetCore.Diagnostics": "1.0.0",
        "Microsoft.AspNetCore.Mvc": "1.0.0",
        "Microsoft.AspNetCore.Razor.Tools": {
          "version": "1.0.0-preview2-final",
          "type": "build"
        },
        "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
        "Microsoft.AspNetCore.Server.Kestrel": "1.0.0",
        "Microsoft.AspNetCore.StaticFiles": "1.0.0",
        "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0",
        "Microsoft.Extensions.Configuration.Json": "1.0.0",
        "Microsoft.Extensions.Logging": "1.0.0",
        "Microsoft.Extensions.Logging.Console": "1.0.0",
        "Microsoft.Extensions.Logging.Debug": "1.0.0",
        "Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0",
        "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0"
      },

      "tools": {
        "BundlerMinifier.Core": "2.0.238",
        "Microsoft.AspNetCore.Razor.Tools": "1.0.0-preview2-final",
        "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final"
      },

      "frameworks": {
        "net452": {
          "dependencies": {
            "DataAccess": {
              "target": "project"
            },
            "Models": {
              "target": "project"
            }
          }
        }
      },

      "buildOptions": {
        "emitEntryPoint": true,
        "preserveCompilationContext": true
      },

      "publishOptions": {
        "include": [
          "wwwroot",
          "Views",
          "Areas/**/Views",
          "appsettings.json",
          "web.config"
        ]
      },
      "runtimes": {
        "win10-x64": {},
        "osx.10.11-64": {} 
      },
      "scripts": {
        "prepublish": [ "bower install", "dotnet bundle" ],
        "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ]
      }
    }
Run Code Online (Sandbox Code Playgroud)

从startup.cs配置

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
    {
        Mapper.Initialize(config =>
        {
            /*View Models*/
            config.CreateMap<Permit, PermitViewModel>().ReverseMap();
            config.CreateMap<PermitType, PermitTypeViewModel>().ReverseMap();
            config.CreateMap<Property, PropertyViewModel>().ReverseMap();
            config.CreateMap<Region, RegionViewModel>().ReverseMap();
            config.CreateMap<State, StateViewModel>().ReverseMap();
            config.CreateMap<User, UserViewModel>().ReverseMap();

            /*Dtos*/
            config.CreateMap<Permit, PermitDto>().ReverseMap();
            config.CreateMap<Property, PropertyDto>().ReverseMap();
            config.CreateMap<Region, RegionDto>().ReverseMap();
            config.CreateMap<State, StateDto>().ReverseMap();
            config.CreateMap<User, UserDto>().ReverseMap();
        });

        loggerFactory.AddConsole(Configuration.GetSection("Logging"));
        loggerFactory.AddDebug();

        app.UseApplicationInsightsRequestTelemetry();

        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
            app.UseBrowserLink();
        }
        else
        {
            app.UseExceptionHandler("/Home/Error");
        }

        app.UseApplicationInsightsExceptionTelemetry();

        app.UseStaticFiles();

        app.UseMvc(routes =>
        {
            routes.MapRoute(
                name: "default",
                template: "{controller=Home}/{action=Index}/{id?}");
        });
    }
}
Run Code Online (Sandbox Code Playgroud)

Program.cs中

public static void Main(string[] args)
        {
            var host = new WebHostBuilder()
                .UseKestrel()
                .UseContentRoot(Directory.GetCurrentDirectory())
                .UseIISIntegration()
                .UseStartup<Startup>()
                .Build();

            host.Run();
        }
Run Code Online (Sandbox Code Playgroud)

我的目标是让这个在iis上运行.

UPDATE

软件:Microsoft Internet Information Services 8.5

版本:1.0

日期:2016-12-06 23:49:44

字段:日期时间s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent)cs(Referer)sc-status sc-substatus

sc-win32-status time-taken 2016-12-06 23:49:44 fe80 :: 9c6d:a91b:42c:82ea%12 OPTIONS/ - 80 - fe80 :: c510:a062:136b:abe9%12 DavClnt - 200 0 0 1139 2016-12-06 23:49:47 fe80 :: 9c6d:a91b:42c:82ea%12选项/网站 - 80 - fe80 :: c510:a062:136b:abe9%12 Microsoft-WebDAV-MiniRedir/10.0 .14393 - 200 0 0 46 2016-12-06 23:49:47 fe80 :: 9c6d:a91b:42c:82ea%12 PROPFIND/website - 80 - fe80 :: c510:a062:136b:abe9%12 Microsoft-WebDAV -MiniRedir/10.0.14393 - 404 0 2 62 2016-12-06 23:49:47 fe80 :: 9c6d:a91b:42c:82ea%12 PROPFIND/website - 80 - fe80 :: c510:a062:136b:abe9% 12 Microsoft-WebDAV-MiniRedir/10.0.14393 - 404 0 2 62

这是我得到的日志消息

web.config中

<?xml version="1.0" encoding="utf-8"?>
<configuration>

  <!--
    Configure your application settings in appsettings.json. Learn more at http://go.microsoft.com/fwlink/?LinkId=786380
  -->

  <system.webServer>
    <handlers>
      <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified"/>
    </handlers>
    <aspNetCore processPath="%LAUNCHER_PATH%" arguments="%LAUNCHER_ARGS%" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false"/>
  </system.webServer>
</configuration>
Run Code Online (Sandbox Code Playgroud)

Eln*_*naz 3

请查看"platform": "anycpu"平台部分:

"Microsoft.NETCore.App": {
  "version": "1.0.0",
  "type": "platform"
},
Run Code Online (Sandbox Code Playgroud)

 "buildOptions": {
   "platform": "anycpu",
   "emitEntryPoint": true,
   "preserveCompilationContext": true
},
Run Code Online (Sandbox Code Playgroud)