Iis ASP.NET核心此本地主机页可以’;找不到

Iis ASP.NET核心此本地主机页可以’;找不到,iis,asp.net-core-mvc,Iis,Asp.net Core Mvc,有人遇到过这种问题吗?我想这和IIS有点关系。。。我正在使用IIS 10,还使用VS2017和ASP.NET内核。启动应用程序时,我看到以下错误: 找不到此本地主机页 找不到该网址的网页: 我试着换端口。但什么都不管用。 我尝试了其他的应用程序,但只有这个项目有这种错误,我不知道为什么 你知道怎么解决这个问题吗 更新: 确保project、lauchsettings.json端口设置正确。如果发生这种情况,您将丢失wwwroot文件夹。当我意识到我意外删除了启动类“配置方法: a

有人遇到过这种问题吗?我想这和IIS有点关系。。。我正在使用IIS 10,还使用VS2017和ASP.NET内核。启动应用程序时,我看到以下错误:

找不到此本地主机页

找不到该网址的网页:

我试着换端口。但什么都不管用。 我尝试了其他的应用程序,但只有这个项目有这种错误,我不知道为什么

你知道怎么解决这个问题吗

更新:


确保project、lauchsettings.json端口设置正确。

如果发生这种情况,您将丢失wwwroot文件夹。

当我意识到我意外删除了启动类“配置方法:

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

如果上面的答案不起作用,或者您来自.NETWebAPI教程,这可能会有所帮助。因此,对于我来说,我从
launchSettings.json
中删除了
launchUrl
属性,因为我想使用一个静态页面(按照我下面的教程中的说明),而忘记了匆忙添加两行。最后我回去看了看,这解决了我的问题

打开
Startup.cs
文件并在
public void Configure…
中在
app.UseMvc()上方添加以下内容行:

app.UseDefaultFiles();

app.UseStaticFiles()

也有同样的问题,结果我无意中通过重构将HomeController的Index()方法更改为属性

public ViewResult Index() => View()
变成

public ViewResult Index => View();

这发生在我身上是因为我把一个.NETCore1Razor页面复制到了我的.NETCore2.2项目中。我在Razor页面上添加了一个@page声明,一切正常。仅在此处添加此内容,因为这是此问题的第一个Google结果。

这与类似,但显示了如何在.Net Core 3.0版中定义路由

我在尝试访问API端点时遇到了类似的问题https://localhost:44380/api/Restaurants

为了映射继承自
ControllerBase
类的API控制器类的路由,我需要将行
endpoints.MapControllers
添加到
Startup.cs
类的
Configure
方法,如下所示:

        //Pre .NET core 3.0 way of doing things
        //app.UseMvc(routes => {<some routing stuff here>});

        //.NET core 3.0 way
        app.UseRouting();
        app.UseEndpoints(endpoints =>
        {
            endpoints.MapRazorPages(); //Routes for pages
            endpoints.MapControllers(); //Routes for my API controllers
        });
//以前的.NET core 3.0做事方式
//app.UseMvc(routes=>{});
//.NET核心3.0方式
app.UseRouting();
app.UseEndpoints(端点=>
{
endpoints.MapRazorPages();//页面的路由
endpoints.MapControllers();//我的API控制器的路由
});

我遇到了同样的问题,但这个错误很愚蠢,因此解决方法很简单! 我的路线上有个打字错误 我在控制器名称后错误地添加了一个空格 我知道这不是一个很专业的答案,但仔细检查一下也无妨

是:

更正为:

app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllerRoute("Default", "{controller=Home}/{action=Index}/{id?}"); 
});

请务必检查并尝试以下项目:

  • 更改项目属性中的端口号

  • 使用“iisreset”命令在cmd中重置IIS

  • 检查StartUp.cs以确保

    app.UseEndpoints(端点=> { endpoints.MapControllerRoute( 名称:“默认”, 模式:“{controller=Home}/{action=Index}/{id?}”); });

  • 重新启动VS和笔记本电脑,但也无济于事

  • 选中launchSetting.json,但一切正常


  • 在我的例子中,我将
    索引
    名称修改为
    主页
    ,并通过检查几个地方来解决它:

    (您可以在整个解决方案中搜索
    索引
    ,以进行检查)

  • Views/_Layout.cshtml
  • xxx
    
  • Startup.cs中
  • app.UseEndpoints(端点=>
    {
    endpoints.MapControllerRoute(
    名称:“默认”,
    模式:“{controller=Home}/{action=HomePage}/{id?}”);
    });
    
  • Controllers/HomeController.cs中
  • public IActionResult主页()
    {
    返回视图();
    }
    

    在我编辑了这三个位置之后,它工作得很好。

    您是否设置了默认启动页面?你确定你有关于那个项目的网页吗。是否启用了目录浏览(IIS)?不要激动,一个接一个地解决你的问题,直到你得到明确的解决方案。你删除了主视图/控制器了吗?我如何设置fefault启动页面?我已经在我的网站上设置了启动项目。我也使用这个路由:
    app.UseMvcWithDefaultRoute()你的项目在本地电脑上工作吗?我在本地电脑上工作,事实上,这是唯一一个项目有这种问题,其他的做工作。实际上这是我的错,我评论了我的索引页,这就是为什么他们找不到索引页,它显示了错误。现在它已被修复。如果使用.net core 2.1,您的解决方案是正确的,但您需要添加以下行服务。AddMvc();
    
    app.UseEndpoints(endpoints =>
                {
                    endpoints.MapControllerRoute("Default", "{controller=Home}/{action=Index}/{id?}"); 
    });