2017-04-08 5 views
0

LinodeにAngular 4を配備するのに問題があります。LinodeにAngularをデプロイ

Angular-Cliを使用すると、ちょうど基本的なGoogleマップをレンダリングする小さなAngular 4アプリがあります。 hereが見つかり、Mac上でローカルに正常に動作します。

LinodeはFedora 25をうまく動作させるためにセットアップされています。

私はホスト名 'ofeyspi'を設定し、私のlinodeにレポをクローンしました。ホスト名を確認する

$ hostname 
ofeyspi 

$ cat /etc/hosts 
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 
::1   localhost localhost.localdomain localhost6 localhost6.localdomain6 
139.162.199.9 ofeyspi.qqiresources.com ofeyspi 

は、その後、私は実行し、URLに接続されています:あなたは、これはエラーを与えるテンプレート要素に問題があることを見ることができるように

$ ng build --prod --bh /root/beans3/dist/ 
11% building modules 9/9 modules 0 activeTemplate parse warnings:     
The <template> element is deprecated. Use <ng-template> instead (" 
    <div class="card"> 
    [WARNING ->]<template ngFor let-panel [ngForOf]="panels"> 
     <div role="tab" id="{{panel.id}}-header" [attr.ar"): ng:///root/beans3/node_modules/@ng-bootstrap/ng-bootstrap/accordion/[email protected]:4 
Hash: 079970cfbabe6b2f710a                
Time: 34065ms 
chunk {0} polyfills.a3e056f914d9748ff431.bundle.js (polyfills) 158 kB {4} [initial] [rendered] 
chunk {1} main.47083d1d3073f3856af7.bundle.js (main) 142 kB {3} [initial] [rendered] 
chunk {2} styles.604a57bc7d4c0f84e447.bundle.css (styles) 122 bytes {4} [initial] [rendered] 
chunk {3} vendor.244ceb2ee1e4bb317079.bundle.js (vendor) 1.39 MB [initial] [rendered] 
chunk {4} inline.df954263324e7c133385.bundle.js (inline) 0 bytes [entry] [rendered] 

これは開発では無視することができますが、私はそれが生産のために同じであるのだろうかと思います。

私はhttp://qqiresources.com:4200またはhttp://139.162.199.9:4200に移動すると、私は、接続エラーが発生しますこれは、新しいdistディレクトリを作成し、私は実行し、

$ ng server --host qqiresources.com 

私も試してみた、

$ ng server --host 139.162.199.9 
** NG Live Development Server is running on http://139.162.199.9:4200 ** 
Hash: 2391cafc7c903540029f                
Time: 17824ms 
chunk {0} polyfills.bundle.js, polyfills.bundle.js.map (polyfills) 158 kB {4} [initial] [rendered] 
chunk {1} main.bundle.js, main.bundle.js.map (main) 10.5 kB {3} [initial] [rendered] 
chunk {2} styles.bundle.js, styles.bundle.js.map (styles) 150 kB {4} [initial] [rendered] 
chunk {3} vendor.bundle.js, vendor.bundle.js.map (vendor) 2.67 MB [initial] [rendered] 
chunk {4} inline.bundle.js, inline.bundle.js.map (inline) 0 bytes [entry] [rendered] 
webpack: Compiled successfully. 

私はdistディレクトリ内やプロジェクトのルートディレクトリに両方の2番目のコマンドを実行しようとしました

Failed to load resource: net::ERR_CONNECTION_REFUSED 

コンソール番組を「このサイトは到達できません」。

紛失しているものはありますか?

UPDATE:私は今、そのNGサーバが正しくないので、私はノードをインストールし、私はHTTPサーバで実行distディレクトリに移動し、

$ http-server 
Starting up http-server, serving ./ 
Available on: 
    http://127.0.0.1:8080 
    http://139.162.199.9:8080 
Hit CTRL-C to stop the server 

しかし、まだhttp://139.162.199.9:8080に移動すると起動します参照 同じ「サイトに到達できません」というメッセージが表示されます。

おかげ

UPDATE: 私は、Apache 2の作業を持って、distディレクトリにindex.htmlファイルを提供しています。しかしdistの他のファイルを使うのに問題があるようです。 私はそれに質問を掲示しましたRunning Angular-cli on Apache 2

+1

私はlinodeについてよく知らない。しかし、決して生産の中で「サーブ」を実行すべきではありません。なぜ「dist」フォルダをApache、nginx、またはプロダクションノードサーバー経由で静的に提供しないのですか? –

+0

これで、本番環境でng serveを使用すべきではありません。私はノードサーバーなどが必要です。ありがとうございました。 –

+1

私は質問への回答を追加しました。あなたはietherで回答を受け入れるか、回答を追加して受け入れることができます。ありがとうございました。 –

答えて

2

私はlinodeについてよく知らないです。しかし、決して生産の中で「サーブ」を実行すべきではありません。 apache、nginx、または実動ノードサーバー経由で静的に 'dist'フォルダを提供しないでください。これは、ほとんどのアングルアプリがプロダクションでどのように提供されるかです。

関連する問題