4 routes node.js express keystonejs
我有一个基于keystone的站点和一个完全静态的站点.
我想将静态集成到第一个中.所有对"/"的请求都将服务于静态请求,但"/ resources"下的请求将服务于keystone站点.
基本上:
"/" would serve the static folder 'site'
"/resources" would serve the keystone app
Run Code Online (Sandbox Code Playgroud)
目前我的结构是:
public
| - keystone
| - site
Run Code Online (Sandbox Code Playgroud)
我的keystone静态选项设置为'public'
'static': 'public'
Run Code Online (Sandbox Code Playgroud)
我该如何设置这些路线?
我正在考虑以这种方式使用中间件:
app.use("/", express.static(__dirname + "/site"));
app.use("/resources", express.static(__dirname + "/keystone"));
Run Code Online (Sandbox Code Playgroud)
但是我怎么能在keystone中做到这一点?
您不需要任何额外的中间件.随着选项'static' : 'public',放置在任何静态内容的公共文件夹中的项目文件夹内将担任静态内容.
也可以通过提供这样的目录数组来定义多个目录,'static' : ['public','site']这样也可以提供目录站点中的所有内容.
我假设您希望在某人点击您的网站root时加载某种index.html.您可以通过添加重定向来实现/routes/index.js.只需添加keystone.redirect('/', '/index.html');或任何您想要提供的文件名.您还必须删除keystone路由'/'
| 归档时间: |
|
| 查看次数: |
2140 次 |
| 最近记录: |