NodeJS Express.js对静态文件的请求超时

zsohkypk  于 2023-05-28  发布在  Node.js
关注(0)|答案(1)|浏览(194)

我已经为此挣扎了好几个星期了--出于某种原因,Express在启动后的几个小时内工作正常,然后它开始忽略对静态文件的请求。它看起来像这样:

GET / 304 153ms
GET /js/bootstrap.min.js 200 120000ms
GET /img/guide/0.png 200 120000ms
GET /img/guide/1.png 200 120000ms
GET /img/guide/2.png 200 120000ms

当我查看Chrome的资源浏览器时,由普通app.get()函数处理的/处的页面正常工作并发送到客户端-静态文件没有。
从客户端的Angular 来看,页面加载2分钟,显示空白的白色虚无,然后显示内容,没有任何CSS样式或脚本(可预测)。
我不知道我做错了什么,即使是我发现的最简单的Express示例也有这个问题,而且我没有看到它发布在任何地方。也许是中间件的顺序,我真的不知道了...
我希望是一些琐碎的事情,而我只是愚蠢/盲目;下面是代码的一部分:

app = express()
app.set('views', __dirname + '/views')
app.set('view engine', 'jade')
app.use(express.logger('dev'))
app.use(express.cookieParser())
app.use(express.bodyParser())
app.use(express.session({
    key: 'express.sid',
    secret: 'wewillchangethislater',
    store: sessionStore
}))
app.use(passport.initialize())
app.use(passport.session())
app.use(function(req, res, next) {
    res.locals.isAjax = false
    res.locals.user = req.user
    next()
})
app.use(app.router)
app.use(express.static(__dirname + '/public'))

我也看到过用简单得多的代码来实现:

var express = require('express')
var app = express()

app.set('views', __dirname + '/views')
app.set('view engine', 'jade')
app.use(express.logger('dev'))
app.use(function(req, res, next) {
    res.locals.isAjax = false
    next()
})
app.use(express.static(__dirname + '/public'))

*some routes here*

app.listen(9999)

其余的代码在这个完全破碎的repo中:https://github.com/Maxorq/Mikuia/blob/master/www.js在这些情况下,我发现唯一有帮助的是重新启动,这不是很有趣:/

9o685dep

9o685dep1#

我已经看到了这种行为与树脂服务器由于配置
也许不一样,但可能会给你指出正确的方向
参见https://stackoverflow.com/questions/22325309/css-and-js-files-hold-the-http-connection-until-timeout-on-resin-4

相关问题