链接Node.js中的html文件

时间:2013-02-11 15:27:39

标签: node.js

Server.js

..... .....

app.configure(function(){

// map .renderFile to ".html" files
app.engine('html', require('ejs').renderFile);

// make ".html" the default
app.set('view engine', 'html');

app.set('views', __dirname + '/public/views');

......

}

register.html

<form class="form-signup" action="/admin/signup" method="post">
....
....
</form>

的login.html

<a class="link-width" href="views/register.html">Register</a>

但点击该链接无效,但我在public \ views \ register.html

中有register.html

下面的代码正在运行,但我已经硬编码了域名和端口,这是一个坏的 实践(将来这些价值可能会改变)

<a class="link-width" href="http://localhost:9090/admin/register">Register</a>

服务器端

res.render("login", {message : ""});

提前致谢。

2 个答案:

答案 0 :(得分:0)

您可以从app.locals传递网站网址,例如,您可以从配置文件中提取siteurl:

app.locals({
site_url : cfg.site_url
});

然后在视图文件中,您可以执行&lt;%= site_url%&gt;

答案 1 :(得分:0)

您需要配置中间件以提供静态内容。

app.use(express.static( __dirname + '/public' ));