2017-02-07 16 views
1

私はウェブ技術とプログラミングを学び始めています。私は自分のローカルWebサーバを設定しています。私は、HTTPD、PHP、Python、MySQLをWindows上で実行しています。今度は、Node.jsをミックスに追加します。 Windows 64ビットインストーラーをインストールしました。今私はどのように始めますか?私はtest.jsファイルに基本的なHello Worldスクリプトを持っています。しかし、私はブラウザでこのファイルにアクセスすると、プレーンテキストとしてのみ表示されます。それは実行されません。サーバー上でNode.jsスクリプトを実行するには?サーバー上でNode.jsスクリプトを実行する方法は?

+0

'node/path/to/your/file.js' – Aer0

+0

私の初心者のために申し訳ありません。 OK。できます。しかし、私はそれをWebホスティングサーバーにオンラインでどのように展開するのですか?私はサーバーにログインし、サーバーを実行させるたびに 'node file.js'と入力するとは思わない。 – Ultramarine

+0

現在、このコマンドを入力する必要がある。手動またはサービス/ツール/ Jenkinsのようなものを通して。 SaaSプロバイダの多くは、GUIでサービスを自動的に展開して開始することができます。 Googleを見学しましょう。 – Aer0

答えて

2

ノードスクリプトを開始するのはかなり簡単です。コマンドラインまたは端末を使用して、次のコマンドを実行してください。

node /path/to/your/file.js 

ノードスクリプトを開始します。サーバーを始めるつもりなら、それはほぼ同じです。ノードファイルにサーバーを定義して起動するだけで構いません。 expressを使用している単純なサーバーは、このように見えます(完全ノード方式を使用することもできます。これはexpressを使用した単純な例です)。単純ノードhttpサーバーの設定方法についてはgoogleをチェックしてください。

var express = require('express'); 
var app = express(); 
var port = 4000; 

app.listen(process.env.port || port); 

ご覧のとおり、指定されたポートは4000に設定されています。値自体を変更するか、ノード環境変数を渡すだけで簡単に調整できます。環境変数を渡すには、このようにサーバーを起動してください。

node port=3000 /path/to/your/file.js 

これは最終的に明らかにポート3000にサーバーを起動しますどのprocess.env.portにポートの値を渡します。

+0

Ok。私はそれを稼いだと実行している!正式なウェブホスティングにそれを配備するためのさらなる調査が必要です:-) – Ultramarine

+0

これをチェックしてください。彼らはまた、無料の計画を持っています。 https://www.openshift.com/ – Aer0

0

あなたの実行ファイル:node server.js

そして、それが開始されます。

サーバーを実行するポートのコードに指定する必要があります。そして、それはクエンティンが指摘したように、私は、「Webサーバーを作成する」を考えていたhttp://localhost:3000/


で例えばアクセス可能です。もちろん、サーバーなしでNode.jsでjavascriptコードを実行できます。次に、ローカルホストの部分をスキップし、コンソールでnode test.jsを使用してください。

+1

質問には、「Hello、world」というスクリプトしかないということです。あなたの答えは、HTTPサーバーを作成するためにJavaScriptを書き込む箇所をスキップしています。 – Quentin

+0

@クエンティン - 真、私は答えを – libik

1

あなたは、サーバーへのたびにログインする必要はありませんので、実行中のファイルを維持するためにこれらのパッケージを使用することができます -

forever をし、あなただけ書くことができます: -

forever start app.js 

nodemon

nodemon app.js 

pm2 これは非常に便利です。アプリを自動的に再起動するのでクラッシュまたはエラーが発生する

pm2 start app.js 
+0

固定しています。あなたの答えは、HTTPサーバーを作成するためにJavaScriptを書き込む箇所をスキップしています。 – Quentin

+0

コメントは彼の質問を吹く、彼はどのように彼はサーバー上で実行してアプリを維持することができるか尋ねた –

関連する問題