簡體   English   中英

Express.js對靜態文件的超時請求

[英]Express.js timeouts requests to static files

我已經為此苦苦掙扎了好幾個星期了-由於某種原因,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()函數處理,可以正常工作並發送給客戶端-靜態文件卻沒有。

在客戶端方面,該頁面加載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)

其余的代碼在這個完全中斷的倉庫中: https : //github.com/Maxorq/Mikuia/blob/master/www.js在這種情況下,我發現唯一可以幫助的是重新啟動,這不太好玩:/

由於配置,我已經看到樹脂服務器的這種行為

可能不一樣,但可能會指出正確的方向

參見https://stackoverflow.com/questions/22325309/css-and-js-files-hold-the-http-connection-until-timeout-on-resin-4

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM