0

別のディレクトリが存在する場合、オプションでGoogle App Engine app.yamlファイルの静的ファイルディレクトリをオーバーライドすることはできますか?ソースディレクトリ(縮小されていない)とビルドディレクトリ(縮小されて連結されている)があります。Google App Engineで、srcディレクトリの代わりにビルドディレクトリが存在する場合は、それを自動的に使用するようにします。そうすれば、srcディレクトリを使用して開発し、ビルドを作成してデプロイできます。次に、ビルドディレクトリを削除すると、GAEはsrcディレクトリから静的ファイルの提供に戻ります。

これを行う必要がある理由は、Backbone.jsとRequire.jsをモジュールとして使用してアプリケーションを構築しているためです。毎回app.yamlファイルを変更せずに、コードを最適化してデプロイできるようにする必要があります。

4

2 に答える 2

2

フレームワークがテンプレート内のソースjavascriptファイルへの異なるパスを使用する現在のシステムにはかなり満足しています。次に、起動時に、os.environとget_application_id()のチェックを組み合わせて、dev_appserverでローカルに実行しているか、GAEのテストappidまたは本番appidで実行しているかを自動的に検出します。

そして次のステップに進むと、縮小されたJSを積極的にキャッシュする必要があります。その場合、クライアントに新しいバージョンの更新を強制することはできません。一般的な回避策は、縮小されたjsファイル名が更新されるたびにハッシュまたは日付文字列を追加することです。これは、app.yamlの代わりにフレームワーク/テンプレートレイヤーでも行う必要があることです。

于 2013-03-12T21:27:25.127 に答える
1

これはテンプレートレイヤーで行います。アセットへのリンクを含むテンプレートをレンダリングする場合は、縮小バージョンが存在するかどうかを確認してください。含まれている場合は、それにリンクします。そうでない場合は、縮小されていないバージョンにリンクします。

これは、ビルドを作成せずに誤ってデプロイした場合にも役立ちます。最適化されていないアセットを提供するだけです。

于 2013-03-12T21:24:28.563 に答える