刚刚完成我的第一个mvc4应用程序。一切都很好,直到我部署它,我得到: 500内部服务器错误。您正在查找的资源存在问题,无法显示。 每次我尝试呼叫/帐户/注册或/帐户/登录控制器:
我在firefox控制台和小提琴手里偷窥了一下。我在那里找不到任何有用的东西,但是我再也不知道我甚至应该寻找什么。
其他一些帖子说检查服务器日志但这本身就是一个问题,因为当我尝试下载,移动,查看或删除最新的日志文件时,我收到“文件传输失败”,“550无法访问文件”等错误“,”500无法删除文件“。
我不知道还能做什么,有些请指教。 下面是一些用于调用Login控制器的代码。我不会发布注册版本,因为它们似乎相关。
Ajax电话:
$.ajax({
url: "/Account/Login",
type: "POST",
data: $('#loginForm').serialize(),
success: function (resultData) {
if (resultData.ok) {
...unrelated stuff...has call to resultData.message
}
}
});
登录控制器:
[AllowAnonymous]
[HttpPost]
public ActionResult Login(LoginModel model)
{
if (ModelState.IsValid)
{
if (Membership.ValidateUser(model.UserName, model.Password))
{
FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe);
return Json(new { ok = true, message = "Login successful." });
}
else
{
return Json(new { ok = false, message = "The username or password you entered is invalid. Please try again." });
}
}
// If we got this far, something failed, redisplay form
return View(model);
}
这一切似乎都非常标准,所以我真的不知道它可能是什么或如何诊断
答案 0 :(得分:4)
我遇到了类似的问题,这是由于某些引用的DLL不存在于服务器的GAC中(仅在安装了MVC4 beta的开发机器上)。解决方案是在编译之前将这些依赖项设置为“Copy to Local”
* System.Web.Mvc
* System.Web.Routing
* System.Web.Abstractions
* Microsoft.Web.Infrastructure
* System.Web.Razor
* System.Web.WebPages.Deployment
* System.Web.WebPages.Razor
如果您遇到同样的问题,这些链接可以帮助您解决问题:
Could not load file or assembly 'System.Web.Mvc'
http://haacked.com/archive/2008/11/03/bin-deploy-aspnetmvc.aspx