为了账号安全,请及时绑定邮箱和手机立即绑定

使用express.js的静态文件

使用express.js的静态文件

茅侃侃 2019-07-25 20:08:45
使用express.js的静态文件我想将服务index.html和/media子目录作为静态文件。索引文件应该在/index.html和/URL处提供。我有web_server.use("/media", express.static(__dirname + '/media'));web_server.use("/", express.static(__dirname));但第二行显然服务于整个__dirname,包括其中的所有文件(不只是index.html和media),我不想要。我也试过了web_server.use("/", express.static(__dirname + '/index.html'));但访问基本URL /然后导致对web_server/index.html/index.html(双index.html组件)的请求,当然这会失败。有任何想法吗?顺便说一句,我可以在Express中找到关于这个主题的绝对文档(static()+它的参数)......令人沮丧。文档链接也是受欢迎的。
查看完整描述

3 回答

?
MYYA

TA贡献1868条经验 获得超4个赞

express.static()期望第一个参数是目录的路径,而不是文件名。我建议创建另一个子目录来包含你的index.html并使用它。

在Express 文档中提供静态文件,或更详细的serve-static文档,包括服务的默认行为index.html

默认情况下,此模块将发送“index.html”文件以响应目录上的请求。要禁用此设置false或提供新索引,请按首选顺序传递字符串或数组。


查看完整回答
反对 回复 2019-07-25
?
MMTTMM

TA贡献1869条经验 获得超4个赞

在最新版本的express中,不推荐使用“createServer”。这个例子对我有用:


var express = require('express');

var app = express();

var path = require('path');


//app.use(express.static(__dirname)); // Current directory is root

app.use(express.static(path.join(__dirname, 'public'))); //  "public" off of current is root


app.listen(80);

console.log('Listening on port 80');


查看完整回答
反对 回复 2019-07-25
  • 3 回答
  • 0 关注
  • 823 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信