我有一个非常简单的页面使用快递,当我点击我的路线它下载页面而不是显示它。我将从加载正常的索引页面转到faq页面,这是目前为止唯一的其他页面。我正在使用ejs模板,因此导航栏是部分的。这是header.ejs
的链接<!-- views/partials/header.ejs -->
<ul class="nav navbar-nav">
<li><a href="/">Home</a></li>
</ul>
<div class="collapse navbar-collapse collapse">
<ul class="nav navbar-nav navbar-right">
<a class="btn navbutton" >Bio</a></button>
<a class="btn navbutton" >My Work</a></button>
<a class="btn navbutton" >Clients</a></button>
<a class="btn navbutton" href="pages/faq.ejs">FAQ</a></button>
</ul>
</div><!-- /.navbar-collapse -->
</div>
这是server.js
var express = require('express');
var app = express();
var flash = require('connect-flash');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var session = require('express-session');
var html = require('html');
// serve static files from public folder
app.use('/',express.static(__dirname + '/public'));
app.use('/',express.static(__dirname + '/views'));
app.set('view engine', 'ejs');
// ROUTES
app.get('/', function(req,res) {
res.render('pages/index');
});
app.get('/faq', function(req,res) {
res.render('pages/faq');
});
如果有帮助,这是文件结构
-node_modules
-public
-css
-images
-js
-views
-partials
-pages
server.js
答案 0 :(得分:3)
我相信问题在这里:
<a class="btn navbutton" href="pages/faq.ejs">FAQ</a></button>
不应该是:
<a class="btn navbutton" href="faq">FAQ</a></button>
(没有.ejs
)
修改强>
你也应该删除这一行:
app.use('/',express.static(__dirname + '/views'));
我相信这是允许下载文件而不是返回404的原因。