Hi,请  登录  或  注册

网狐网站在 ASP.NET 4.0 环境下的搭建实测记录

这两天整理旧项目的时候,又把网狐这套网站前台拉出来重搭了一遍。结果一开工就踩到老坑——它死活要 跑在 ASP.NET 4.0(32 位)环境 下,版本选错、位数选错,页面不是 500 就是空白。

下面把我这次在 Windows + IIS 环境下的实测过程简单记一下,后面有人再搭,就不用到处乱猜版本了。网狐网站在 ASP.NET 4.0 环境下的搭建实测记录

IIS 中站点属性里的 ASP.NET 版本设置界面


一句话结论:必须 ASP.NET 4.0 且是 32 位应用程序池

实测下来,这套网站前台有两个关键前提:

  1. 站点使用的 ASP.NET 版本必须是 4.0(4.0.30319)
  2. 对应的 应用程序池要启用 32 位应用程序(Enable 32-bit Applications = True)

我一开始偷懒,用了服务器默认的 64 位应用程序池,又把 ASP.NET 版本留在 2.0,结果:

  • 首页直接 500
  • 有时候能打开,但一登录就黄页错误
  • 日志里全是“无法加载程序集 App_Web_xxx”之类的报错

把站点单独挂到一个新建的 32 位应用程序池上,并在站点属性里明确选择 ASP.NET 4.0.30319,刷新之后,前台页面就正常了。


实测配置步骤简要记录

这次我是在一台 Windows Server + IIS 的干净环境上重搭,过程大致是这样:

  1. 安装 .NET Framework 4.0 / 4.5(系统里要能看到 v4.0.30319)
  2. IIS 里新建一个应用程序池,管道模式用“集成”,并把“启用 32 位应用程序”改成 True
  3. 新建站点,物理路径指向网狐网站前台的目录
  4. 把这个站点绑定到刚才新建的 32 位应用程序池
  5. 在站点的“ASP.NET”页中,手动选择 4.0.30319 版本(就跟上面的截图那样)
  6. 赋予网站目录 IIS_IUSRS / NETWORK SERVICE 的读写权限(至少读+执行),否则上传、生成文件时会报权限错误

做到这一步,基本就能正常访问前台首页了。


版本选错时的几个典型报错

为了确认问题范围,我还故意做了几次错误配置测试:

  • 把版本改回 ASP.NET 2.0:
    • 登录页面直接 500
    • 某些页面抛“目标框架不兼容”之类的异常
  • 使用 64 位应用程序池:
    • 偶现“无法加载文件或程序集”
    • 某些含第三方组件的页面无法初始化

所以如果你遇到:

  • 页面空白但 IIS 日志是 500
  • 明明数据库连得上,但前台始终报程序集加载异常
  • 只有后台能开,前台各种黄页

可以优先检查:

  1. 应用程序池是否 32 位
  2. ASP.NET 版本是否是 4.0.30319

这两个问题解决之后,大多数站点就能顺利跑起来。


多站点并存时的一个小建议

现在很多服务器会同时跑好几套网站,有的还需要 ASP.NET 2.0,有的要 4.0,这种情况建议:

  • 每一套程序单独建一个应用程序池
  • 哪个程序需要 32 位,就只给它这个池开 32 位
  • 不要所有站点共用一个默认池,否则调试起来非常混乱

我这边实测下来,网狐这套前台单独占一个 32 位 4.0 的应用程序池,是最稳的方案。

仅限交流,拒绝商用!

下载地址:


隐藏内容,解锁需 付费 30
付费解锁

文章名称:网狐网站在 ASP.NET 4.0 环境下的搭建实测记录
除非特别注明,本站所有文章均为原创,转载请注明出处:264玫瑰资源库
部分教程资源来源于互联网,请谨慎辨别广告内容,避免上当受骗!

评论 抢沙发

登录

找回密码

注册