2016-10-15 16 views
1

ローカルマシンでAngular2 Quickstartアプリケーションを構築するのに成功しましたが、AWSインスタンスで設定することに前進したいと思います。問題は私がインスタンスにsshしているので、npm startコマンドがローカルブラウザにアプリケーションを読み込まないということです。たとえ弾性IPが割り当てられ、対応するポートが開かれていても、提供された「外部」アドレスは機能しません。また、node_modules/lite-serverファイルを調べて必要な設定変更を更新しましたが、正しく変更する方法が見つかりませんでした。AWSでAngular2を設定する方法

AWSでangular2を開始するのに役立つリソースを教えていただけますか?

答えて

1
だから、まず、ローカルホストおよびAWS EC2インスタンスの間にいくつかの違いがあります。

  • お使いのコンピュータがある

    ブラウザを備えたグラフィカルコンピュータであるec2 vmは、コマンドラインベースのLinuxサーバであり、ブラウザはインストールされていません。 「grunt someTaskは」

  • など、すなわち、自動的にブラウザのウィンドウを開き、積極的な開発のためのライブリロードをやって... Linuxサーバ上で意味がありません段階に組み込まれた余分なものを持っているだけのよう
  • npm start、 EC2 VMは、ベータサーバやプロダクションサーバのように扱いたい場所です。つまり、起動してnpm startでアプリケーションを停止するのではなく、node yourAppFile.jsで起動し、単に実行しているだけですそれが動作すれば。あなたはここで成長しません。

また、ec2 vm自体はセキュリティグループによって保護されており、デフォルトで外部からアクセスできるポートはほとんどないため、「インバウンドルール」を編集する必要があります。本質的に許可するルールを追加してください:"custom" --> "the node port" --> "your IP"。そうすることで、vm-public-ip:port-of-node-appを使用して接続することが可能になります。vm-public-ip:port-of-node-appは、ブラウザで次のようになります。56.128.17.42:3000。そして、あなたがそのルールに自分のIPを置くので、他のIPアドレスはブラウザでそれをロードすることはできません...ちょうどあなた。 ipフィールドに「0.0.0.0/0」と言うと、どこのユーザーであれ、どこにでも接続できます。

1

ローカルマシンのcurlでテストして、動作していることを確認します。あなたは "http://localhost:3000/"(実行中のポートに3000を変更してください)

これは問題ありません。サーバーのセキュリティグループを選択して、IPアドレスからポートを開いていることを確認します(わからない場合は、「自分のIPアドレスは何ですか」とGoogleに伝えることができます)セキュリティについて心配していない再。

+0

shhまたはローカルマシン端末から 'curl'文を実行しますか? 'localhost'をカールすると何ができますか? –

+0

Curlはhttpを含むさまざまなプロトコルの要求を行うためのコマンドラインライブラリです。私はec2インスタンス上で実行することから始めます。 Localhostはあなたのコンピュータのエイリアスです。通常、ループバックアドレス(127.0.0.1)を指し、特定のネットワークインターフェイスカードを指しません。 ec2インスタンスのlocalhostで動作する場合は、サーバーが動作していることがわかります。 –

関連する問題