webAPI 部署服务器404错误
环境检查:
1.netFramework 版本(系统安装版本及应用程序池以及webconfig的配置)
2.端口号是否可以正常访问(telnet 命令查看)
在一以上正常的情况下。尝试以下配置
IIS7.5版本,在 web.config 中增加节点
<system.webServer>
</system.webServer>
参考如下:
<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
<remove name="WebDAVModule" />
</modules>
<validation validateIntegratedModeConfiguration="false" />
<!--<modules>
<remove name="applicationinsightswebtracking" />
<add name="applicationinsightswebtracking" type="microsoft.applicationinsights.web.applicationinsightshttpmodule, microsoft.ai.web" precondition="managedhandler" />
</modules>-->
<handlers>
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<remove name="OPTIONSVerbHandler" />
<remove name="TRACEVerbHandler" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers></system.webServer>
IIS 7.0以下版本:
核心配置
<modules>
<remove name="applicationinsightswebtracking" />
<add name="applicationinsightswebtracking" type="microsoft.applicationinsights.web.applicationinsightshttpmodule, microsoft.ai.web" precondition="managedhandler" />
</modules>
参考配置
<system.webServer>
<!--<modules runAllManagedModulesForAllRequests="true">
<remove name="WebDAVModule" />
</modules>-->
<validation validateIntegratedModeConfiguration="false" />
<modules>
<remove name="applicationinsightswebtracking" />
<add name="applicationinsightswebtracking" type="microsoft.applicationinsights.web.applicationinsightshttpmodule, microsoft.ai.web" precondition="managedhandler" />
</modules>
<handlers>
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<remove name="OPTIONSVerbHandler" />
<remove name="TRACEVerbHandler" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers></system.webServer>
如果以上不生效,服务器为第一次部署IIS服务,检查如下
1无论是否确定已注册,都再注册一次:
Win+R键输入cmd确定,打开命令提示符(Win7以上系统都需要以管理员身份运行,且当前登录账户最好是Administrator)。
依次输入如下命令,并且按确定,等待执行完毕:
cd /d %windir%\Microsoft.NET\Framework\v4.0.30319
aspnet_regiis -i
如果服务器是64位系统,你还需要输入如下命令:
cd /d %windir%\Microsoft.NET\Framework64\v4.0.30319
aspnet_regiis -i
2清理IIS站点垃圾(缓存):
在资源管理器中,打开%windir%\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files文件夹
删除该文件夹下的所有文件和文件夹,root文件夹除外,但root文件夹下的文件和文件夹也要删除。
如果碰到无法删除,提示权限不足或该文件/文件夹被占用之类的,请先停止IIS服务(在运行窗口或cmd窗口输入iisreset /stop可以停止IIS服务),再重试删除。
3,重启服务器。
4,在运行窗口或cmd窗口输入iisreset /start启动IIS服务
本文介绍了当遇到webAPI在IIS服务器上部署后出现404错误时的排查步骤,包括检查netFramework版本、端口访问、web.config配置,以及在IIS7.5中添加特定节点。同时提供了在IIS服务注册、清理缓存和重启服务器等方法来解决该问题。
7819

被折叠的 条评论
为什么被折叠?



