1

ローカルホストでは、アプリは問題なく動作します。

EC2 では、アプリは nginx の背後で実行されます。ブラウザに読み込まれますが、何も表示されません。ブラウザ コンソールにエラーが表示される

TypeError: 'undefined' is not an object (evaluating 'Package["service-configuration"].ServiceConfiguration')

この問題に取り組む方法がわかりません。どんな助けでも感謝します。

編集

  1. NGINX は問題ではありません。meteor サーバーに直接アクセスした場合と同じ動作です。
  2. 「meteor add service-configuration」を実行すると、上記のエラーは修正されますが、エラーが発生しなくても、アプリが EC2 でレンダリングされず、localhost で起動するとレンダリングされるという観察された動作は修正されません。(エラー メッセージは、EC2 と localhost の間で目に見える唯一の違いでした。そのため、それが原因ではないかと推測しました。その仮説は間違っているに違いありません。)したがって、問題はまだ解決していません。

問題が解決しました。レッスン:

Meteor には、デバッグ モードとプロダクション モードがあります。2 つの動作は異なる場合があります。localhost では、meteor はデフォルトでデバッグ モードで実行されます。meteor.com または mup ごとにデプロイする場合、デフォルトは本番モードです。localhost で本番モードで meteor を実行するには、meteor --production.

4

2 に答える 2

3

service-configurationブラウザの設定にアクセスしようとしているようです。

これらはクライアント側では利用できません。これはローカルホスト アプリにも影響しますが、流星がデバッグ モードであるため、アプリが壊れることはありません (空白のページは表示されません)。

デバッグ モードでは、Meteor ファイルは連結されないため、js コンソールでスローされたとしても、このようなエラーは見過ごされます。本番モードでは、エラーによりスクリプトの残りの部分が停止します (すべてが 1 つのファイルに連結されるため)。

これを行うコードがサーバー側でのみ実行されるようにする必要があります。一般に、クライアント側でサービス構成データにアクセスすることはお勧めできません。

于 2014-07-08T10:57:22.653 に答える
0

Arunoda と乗組員はbuildOptions.debugMUP の次のバージョンに設定を追加しているようです。これにより、MUP を介して展開し、localhost. 関連する質問に対する Arunoda の回答と、(少なくとも今のところ) MUP の開発バージョンのドキュメントを参照してください。

于 2015-05-11T20:23:53.540 に答える