修改ASPX文件JS代码后部署IIS 10出现404问题排查
可能的原因及排查方案
- 文件名与URL大小写不匹配:Windows本地文件系统不区分大小写,但IIS的URL解析在部分配置场景下会严格匹配大小写。检查浏览器地址栏的URL(比如
/Pages/MyPage.aspx)和服务器上的实际文件名(比如mypage.aspx)是否完全一致,包括大小写。 - ASPX处理程序映射异常:确认IIS站点的「处理程序映射」中,
.aspx扩展名是否正确关联了System.Web.UI.PageHandlerFactory。如果该映射被误删或配置错误,IIS无法识别并处理ASPX文件,会返回404。可以对比同文件夹下正常访问的ASPX页面所在站点的配置。 - 文件权限不足:IIS应用池的运行身份(通常是
IIS AppPool\[你的应用池名称])没有读取该ASPX文件的权限。右键文件→「属性」→「安全」标签,检查是否包含对应应用池身份的读取权限,缺失的话添加并赋予读取权限。 - URL重写规则拦截:如果站点启用了URL重写模块,检查是否存在规则将该ASPX页面的请求重定向到了不存在的地址。可以临时禁用URL重写规则,再测试访问是否恢复正常。
- 缓存导致的旧响应:浏览器可能缓存了之前的404错误响应,或者IIS的静态内容缓存未更新。尝试清除浏览器缓存(快捷键
Ctrl+Shift+Del),或者重启站点的应用池强制刷新服务器端缓存。 - 虚拟目录路径配置错误:如果该页面所在文件夹是虚拟目录,确认虚拟目录的物理路径是否正确指向了包含该文件的实际服务器文件夹。部署时若虚拟路径配置错误,会导致IIS无法定位到文件。
- 文件被系统阻止:从本地复制到服务器的文件可能被Windows标记为“来自外部的文件”而被阻止。右键文件→「属性」→「常规」标签,查看底部是否有「解除锁定」按钮,点击解除后再测试。
- 请求过滤规则限制:检查站点的「请求过滤」设置,是否存在针对该ASPX文件的拒绝访问规则,或者限制了特定HTTP方法(如GET/POST)。在IIS管理器中打开「请求过滤」,查看规则列表并排查。
内容的提问来源于stack exchange,提问作者Atlass-
相关产品推荐
相关产品推荐

