我試過localhost:3000/index.html(我把靜態頁面放在這裏),localhost:3000/javascripts/dio.js(我把js放在這裏) localhost:3000/images/dio1.jpg(我把圖片放在這裏), 全部無法訪問。爲什麼?哪裏不對?Express.js即使在配置完express.static後也無法訪問靜態文件
我app.js定義:
var express = require('express')
var app=express()
app.bcrypt = require('bcrypt')
app.im=require('imagemagick')
app.fs=require('fs')
app.application_root = __dirname
app.path = require("path")
app.mongoose = require("mongoose")
var config=require('./config.js')(app,express)
var models = require('./models/models.js')(app.mongoose)
models.UserModel = models.UserModel
models.CommentModel = models.CommentModel
models.ItemModel = models.ItemModel
require('./routes')(app, models)
app.listen(3000);
console.log("Listening on port 3000")
這裏是我的config.js定義:
module.exports = function(app, express, mongoose){
var config=this
app.configure(function(){
app.set('views',__dirname+'/views')
app.set('view engine','jade')
app.set('view engine', {layout:true})
app.use(express.bodyParser())
app.use(express.methodOverride())
app.use(express.cookieParser())
app.use(express.session({secret: 'topsecret',store: new express.session.MemoryStore}))
app.use(app.router)
app.use(express.static(app.path.join(app.application_root+"public")))
app.use(express.errorHandler({dumpExceptions:true,showStack:true}))
app.use(express.bodyParser({keepExtensions: true, uploadDir:"./public/uploads"}))
})
/*DB part:*/
app.mongoose.connect('mongodb://localhost/dio_database')
return config
}
是啊!興奮地看到它終於有效!萬分感謝! –