浏览器加载错误仅与特定文件路径 - 内部服务器错误500

时间:2014-11-22 19:57:26

标签: javascript internal-server-error

我只获得一个js文件的内部服务器错误500,当我更改文件的路径时,它工作正常。以下是我的索引文件中的代码段:


<script type="text/javascript" src="/users/users.client.module.js"></script>
<script type="text/javascript" src="/users/services/authentication.client.service.js"></script>

'users.client.module.js'未加载并提供“内部服务器错误”,Chrome中的网络选项卡将其显示为“text / html”类型。另一个文件'authentication.client.service.js'加载正常。还有其他js文件,它们都加载正常。这是服务器错误:

获取/users/users.client.module.js 500 6.716 ms - 1529

这是网络标签显示的内容:

Remote Address:127.0.0.1:3000
Request URL:`http://`127.0.0.1:3000`/users/users.client.module.js`
Request Method:GET
Status Code:500 Internal Server Error
Request Headersview source
Accept:*/*
Accept-Encoding:gzip,deflate,sdch
Accept-Language:en-US,en;q=0.8
Cache-Control:max-age=0
Connection:keep-alive
Host:localhost:3000
Referer:http://localhost:3000/
User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko)       Chrome/38.0.2125.122 Safari/537.36
Response Headersview source
Connection:keep-alive
Content-Length:1529
Content-Type:text/html; charset=utf-8
Date:Sat, 22 Nov 2014 20:02:07 GMT
X-Content-Type-Options:nosniff
X-Powered-By:Express
ConsoleSearchEmulationRendering

但是,当我将文件'users.client.module.js'放在子文件夹'services'中时,它会正常加载。这是一个例子:

<script type="text/javascript" src="/users/services/users.client.module.js"></script>
<script type="text/javascript" src="/users/services/authentication.client.service.js"></script>

以上工作正常。我很困惑为什么浏览器在第一种情况下不加载文件。我在chrome和safari中都尝试过它。任何帮助,将不胜感激。

以下是express.js文件中的代码,该文件显示了静态资源的服务器端路由

module.exports = function(){     var app = express();

app.use(bodyParser.urlencoded({
    extended: true
}));
app.use(bodyParser.json());
app.use(methodOverride());
app.use(session({
    saveUninitialized: true,
    resave: true,
    secret: config.sessionSecret
}));

// setting views/views engine
app.set('views', './app/views');
app.set('view engine', 'ejs');

app.use(flash());
app.use(passport.initialize());
app.use(passport.session());

// routes
require('../app/routes/index.server.routes.js')(app);
require('../app/routes/users.server.routes.js')(app);

// serving static file
app.use(express.static('./public'));

return app;

};

1 个答案:

答案 0 :(得分:1)

发生了这种情况,因为我打赌你有一个&#34; / users / someparameter&#34; route可能在users.server.routes.js中。因此,当您要求js文件时,它会尝试通过该路径。可能是&#34; someparameter&#34;是一个ID,因此在请求users.client.module.js时,它无法解析参数,因为文件名不是id。

您需要更新路线或重命名&#34;用户&#34;文件夹中。