试图设置我的网站谷歌网站pipe理员工具后,我发现我的自定义ASP.NET 404页面没有返回404状态代码。 它显示正确的自定义页面,并告诉浏览器,一切正常。 这是考虑软404或虚假404。谷歌不喜欢这个。 所以我在这个问题上发现了很多文章,但是我想要的解决scheme似乎没有工作。 我想要的解决scheme是将以下两行添加到自定义404页面的Page_Load方法后面的代码中。 Response.Status = "404 Not Found"; Response.StatusCode = 404; 这不起作用。 页面仍然返回200 OK。 然而,我发现,如果我将以下代码硬编码到devise代码中,它将正常工作。 <asp:Content ID="ContentMain" ContentPlaceHolderID="ContentPlaceHolderMaster" runat="server"> <% Response.Status = "404 Not Found"; Response.StatusCode = 404; %> … Much more code … </asp:content> 该页面正在使用母版页。 我在我的web.configconfiguration自定义错误页面。 我真的宁愿使用后面的代码选项,但我似乎无法使它的工作没有在devise/布局中的黑客内联代码。