我有一个需要更改一些网址的应用程序。例如localhost:9000
应该看起来像localhost:9000/myapp
所有静态文件都将在 html 中具有 url,例如myapp/style/main.css
. 但在实际myapp
文件夹中不会存在,我只需要在 url 中显示它。我不知道如何在内部重写它。
服务器是"grunt-contrib-connect"
我有一个需要更改一些网址的应用程序。例如localhost:9000
应该看起来像localhost:9000/myapp
所有静态文件都将在 html 中具有 url,例如myapp/style/main.css
. 但在实际myapp
文件夹中不会存在,我只需要在 url 中显示它。我不知道如何在内部重写它。
服务器是"grunt-contrib-connect"
安装后,将其放在 Gruntfile 的顶部
var rewriteModule = require('http-rewrite-middleware');
然后在你的连接 livereload 下做这样的事情:
livereload: {
options: {
open: 'http://localhost:9000/myapp',
middleware: function(connect, options, middlewares) {
// rewrite (make sure it is first)
middlewares.unshift(rewriteModule.getMiddleware([
{from: '^/myapp/(.*)', to: '/$1'}
]));
//paths
middlewares.push(connect.static('.tmp'));
middlewares.push(connect().use(
'/bower_components',
connect.static('./bower_components')
));
middlewares.push(connect.static(appConfig.app));
return middlewares;
},