express渲染dist文件夹下的html直接显示源码?
我用vue生成的dist文件夹,自己起的一个server是可以的
var express = require('express');
var app = express();
app.use(express.static('./dist'));
module.exports = app.listen('90', (err) => {
if (err) {
console.log(err);
return;
}
console.log('Listening at http://localhost:90\n');
});
浏览器可以看到效果,但是我想把它部署到express项目上的时候就有问题,网上的教程主要是把dist文件夹内容拷贝到已作为静态资源文件夹的public文件夹下面
app.use(express.static(path.join(__dirname, 'public')));
但是我启动express之后浏览器显示的是html源码
也尝试了一些方法,切换模板引擎(Node.JS Express渲染HTML,变成显示源码 问题及解决),但是没有效果,想问一下这个怎么解决?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
你这个启动的是dist文件夹里面的index.html还是public里面的index.html?
关于express渲染静态文件,
app.use(express.static(path.join(__dirname, 'public')));
你这个直接修改dist的路径就行了啊,不用拷贝到public里面,你这样的话public里面所有的东西都暴漏了,别人都可以拿到,不太安全,不建议这样操作
关于这个问题我也遇到了,看了你们的回答之后我进行了尝试。
这里我留给后来者一个具体问题原因和解决办法。
关于设置express.static()的问题,设置方法很多种,并且都没有问题。
例:
问题所在:
正确例:
如果回答有错,留言修改