当我在本地运行我的mvc 2应用程序时,一切正常,请求日志如下所示:
GET /Scripts/jquery-1.4.1.min.js HTTP/1.1
Accept: */*
Referer: http://localhost.:2846/
Accept-Language: en-us
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; .NET4.0E)
Connection: Keep-Alive
Host: localhost.:2846
将项目移动到远程测试服务器后,所有css和javascript文件都将以404的形式返回
GET /Scripts/jquery-1.4.1.min.js HTTP/1.1
Accept: */*
Referer: http://vnt2k3qa3/NewEmployee
Accept-Language: en-us
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET4.0C; .NET4.0E)
Connection: Keep-Alive
Host: vnt2k3qa3
响应
HTTP/1.1 404 Not Found
Content-Length: 1635
Content-Type: text/html
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
Date: Wed, 23 Feb 2011 23:18:32 GMT
有人碰巧知道这里发生了什么吗?
该站点设置为匿名访问,我可以手动输入脚本或css文件的URL,它就可以正常下载了!
修改
有问题的脚本引用位于主页的主题部分
/Views/Shared/Site.Master
<head>
<title><asp:ContentPlaceHolder ID="TitleContent" runat="server" /></title>
<link rel="Stylesheet" href="/Content/Site.css" type="text/css" />
<script src="/Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
<script src="/Scripts/jquery.color.js" type="text/javascript"></script>
</head>
为这些投掷404的观点是
/查看/主页/索引
/查看/ NewEmployee /创建
(基本上我现在所有的一切)
内容/脚本文件夹位于
/Content/Site.css
/Scripts/jquery-1.4.1.min.js
答案 0 :(得分:2)
我唯一可以看到的问题可能就是它看起来好像是在NewEmployee目录下查找Scripts文件夹而我猜测Scripts文件夹在根目录下。查看为该javascript文件指定的src属性,以查看它在哪里查找文件。
我一直在使用
src='<% = Url.Content("~/Scripts/jquery-1.4.1.js") %>'
我的src标签确保它们无论在何处使用都会到达正确的位置并且对我有用。