2012-01-01 13 views
21

私はちょうどPHPプログラミングの数年後にのNode.jsにダイビングを始めていると私は私の次のプロジェクトのためのNode.jsのアプリを構築したいと思いますが、私はそれを行う方法を見当もつかない。Node.jsでウェブサイトを構築するには?

は、Node.jsのジャンプスタートのためのすべてのリソースはありますか?

ありがとうございます!

答えて

27

は、あなたは、あなたのウェブサイトおよびノー​​ドとのあなたのウェブサーバをプログラムすることができることを意味は、Apache + PHPのいくつかの種類としてのNode.jsを考える必要があります。

ノードは、あなたの基本的なPHPでいくつかの重要な違いがあり、それがイベント化、非同期、ノンブロッキングです。コールバックを処理する方法、イベントループなどをブロックしないでください。

最初にNodeを使って基本的なことを学んでみてください。https://stackoverflow.com/tags/node.js/info(私のお気に入りはnodetuts.comであり、作者はHands on Nodeです)。

基本を学んだら、Expressはウェブフレームワークとして本当に役立ち、Socket.IOはアプリのリアルタイム性に焦点を当てています。

0

Node.jsは本質的にApacheに置き換わるWebサーバであるため、Nodejsを実行するためのホスティングは、nodejsをインストールして実行する必要がある専用サーバまたはクラウドインスタンスです。 node.jsを実行するマシンには、ドメイン名が指定されている必要があります。または、サーバにアクセスできる唯一の方法は、IPアドレスです(この場合はローカルホストです)。

3

WebサーバーでNode.jsを実行する必要があります。基本的には、あなたが完全にコントロールできるVPSまたは専用サーバーが必要です。 [PHPは、標準のWebサーバーであるApacheを実行します。 Node.js ウェブサーバーです。]

またはNode.js hostが見つかります。

+0

私はこれは古い記事ですが、それは私の大学のコンピュータ上のNode.jsサーバーを実行することが可能です知っていますか? – masfenix

+1

ノードJSホストのリンクが機能しなくなりました。親切に答えを更新してください –

6

私はあなたのノードで、いくつかの意味のあるWebページを構築するためのNode.jsのジャンプスタートを探していると思います。ノードのWebフレームワークであるexpressを見てください。彼らは良い(しかし、ガイドの下で)短いチュートリアルを提供しています。

1

別のオプションは、Knockout.js(http://knockoutjs.com/)のようなものを使用し、ページがJSONPは、Node.jsのサーバーへの呼び出しを行うことです。 JSONをクライアントに送るのは、サーバー上のJavaScriptなので、Nodeを使用するのは本当に簡単です。クライアント上でフレームワークを使用すると、そのJSONデータに基づいて動的ページを簡単に作成できます。

欠点は、古いブラウザには優雅なdegredationがないです。利点は、最初から偉大なAJAX組み込みの権利を持つ潜在的に燃える速いウェブサイトです。ここで

はJSONP応答を生成するためにノードを使用するためのいくつかのサンプルコードです:

function writeJsonpResponse(res, jsonpcallback, obj) { 
    var serialized = JSON.stringify(obj); 

    res.writeHead(200, {'Content-Type': 'application/javascript'}); 
    res.write(jsonpcallback + '(' + serialized + ');'); 
    res.end(); 
}