You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET Web应用发布后无法显示默认页,报Endpoint not found错误

排查"Endpoint not found"问题的实用方案

这种情况我之前碰到过好几次,结合你本地default.aspx能正常运行、发布后报错且根目录存在.svc文件的情况,大概率是WCF服务的配置或发布环节出了问题,给你列几个针对性的排查方向:

  • 确认.svc文件的发布完整性与权限
    先检查服务器根目录里是否真的存在.svc文件——有时候发布配置可能不小心把它排除了,或者FTP/发布工具漏传了。另外,给服务器上的.svc文件设置正确权限,确保IIS_IUSRS组拥有读取权限。

  • 验证WCF终结点的配置适配性
    本地能跑是因为web.config的终结点配置适配了本地环境,但发布到服务器后可能存在不匹配:
    打开服务器端的web.config,找到<system.serviceModel>节点下的配置:

    • 确认终结点的address是否匹配服务器域名/路径(别还留着本地的localhost地址)
    • 检查绑定的bindingConfiguration是否符合服务器环境(比如basicHttpBinding的消息大小、传输模式)
    • 确保开启了元数据交换:<serviceMetadata httpGetEnabled="true"/>,否则无法通过.svc页面查看服务说明
  • 检查IIS的WCF组件是否安装
    Windows Server的IIS默认可能没装WCF相关组件,打开服务器管理器→添加角色和功能→Web服务器(IIS)→应用开发,勾选对应WCF服务组件(比如HTTP激活、TCP激活,根据你的服务绑定类型选择)。

  • 直接访问.svc文件测试
    在浏览器里访问http://你的服务器域名/xxx.svc,如果打不开服务说明页面,问题肯定出在.svc配置或IIS的WCF支持上;如果能打开,那大概率是default.aspx里调用服务的代码用了本地地址,没改成服务器地址。

  • 核对应用程序池的.NET版本
    确保IIS应用程序池的.NET CLR版本和你的ASP.NET应用版本一致(比如都是.NET Framework 4.8),别选错成v2.0或无托管代码,否则WCF服务根本无法启动。

小提醒:VS自带的开发服务器对WCF的处理逻辑和IIS不一样,所以本地正常不代表发布后配置没问题,重点要盯着服务器端的细节。

内容的提问来源于stack exchange,提问作者Dogan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 07:52:28