3

URLを変更する必要があるアプリがあります。たとえば、次のようlocalhost:9000になりますlocalhost:9000/myapp

すべての静的ファイルには、html のような url がありますmyapp/style/main.css。しかし、実際のmyappフォルダーには存在しません。URLで表示するだけです。内部的に書き換える方法がわかりません。

サーバーは"grunt-contrib-connect"

4

1 に答える 1

3

http-rewrite-middleware を使用する

インストールしたら、これを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;
      },
于 2015-01-16T20:40:40.643 に答える