tkd55nodejsで作ったWebアプリを80番ポートで動作させたいけど、Apacheが使っているし、Apacheを止めてルートで80番ポートを割り当てるのもセキュリティ的にいやなんでApacheを使ってポート8080を80にリバースプロキシさせてみました。Apacheの設定はこんな感じ。tkd55ubuntuにmeteor.jsを入れてみました。【環境】Ubuntu12.04meteor.jsはjavascritptによるWebアプリのフレームワーク。クライアントサイドJS(ブラウザで動くJS)やサーバーサイドJS(Node.jsとか)ではなく、その両方で動く(Isomorphicな)フレームワークです。index.htmlこれでインストールは完了。パッケージはdebパッケージでインストールしてくれる。インストールされた内容は以下でチェックできる。meteorここまでで環境構築完了。次にに、サンプルアプリケーションを作ってみる。配下にサンプルがインストールされてる。todosディレクトリが作られる。アクセスするとtodo管理アプリできている。firstAppmeteorすると、firstAppディレクトリ配下に以下のファイルが出来ているので、好きなようにいじるだけ。firstApp.jsとりあえずは何か作ってみよう。tkd55初めてNodeを使ったときは、どばーっと1ファイルに書いちゃってものすごく可読性が良くないソースを書いてしまった。nodeで独自モジュールを作成できるので、その方法についてメモ。nodejsでの「モジュール」というのはオブジェクト指向言語でいう「クラス」みたい位置づけです。javascriptなので、中身はライブラリみたいな関数オブジェクトの集合体になります。tkd55前にnode-inspectorを使ってのデバッグ方法を書いたけど、node-inspectorをバッググランドで起動させたり、デバック用のポート(例:http://localhost:8080/debug?port=5858)にアクセスするとか面倒だったのNode.jsのデバッグオプションを使ってgdbライクにデバッグしてみました。※サンプルはお絵描きアプリです。tkd55dotcloudがバージョンアップしてから、今までのDeploy出来てたものが出来なくなった。port8080のwarningがでてるし、吐き出されたURLにアクセスすると、502。同じ現象で解決している人がいたので参考にしながらやったらうまくいったのでメモを。<==express/node_modules/connect/lib/middleware/compress.jsとexpress/node_modules/connect/lib/connect.jsで何かやらかしてるらしい。原因はローカルとdotCloudでconnectのバージョンが違うことらしい。tkd55expressを使用してBASIC認証を試してみたよ。やり方は、expressのbasicAuthメソッドをcreateServer時に叩くだけ。これで、サーバはクライアントに401を返すので、ブラウザからユーザ名とパスワードを入力するとauthorizeメソッドが呼ばれます。password;}3行目以降を次のように変更すれば、パスを分けてBasic認証することが可能っす。■■■■■■■■expressのバージョンがあがって使い方が少し変わりました。tkd55dotCloud上でNodejsを使ってみたときのメモ。/home/dotcloud/current最後に、グローバルにインストルしたnpmのモジュールを紐つけます。tkd55dotcloudを試してみました。dotcludはPHPやPerl、Ruby、Java、Python、Node.jsなど複数の言語と、MySQL、PostgreSQL、MongoDB、CouchDB、Redisなど複数のデータベースを開発者が自由に組み合わせてプラットフォームを構成できて、クラウド上のPaaSとして利用できるみたい。料金はどのプログラミング言語とデータベースを選択しても同一で、2サービスまでは無料で利用可能とのこと。これは試すしかないと思ってとりあえず、チュートリアルに従ってやったときの手順をまとめておきます。次は実際にphpで書いてみよう。tkd55デーモン化するのには以下の2つのパッケージがあるみたい。・forever・daemon今回は「forever」を使用してデーモン化する。tkd55Nodejsのインストールについて書かれている記事はたくさんあるけど、Nodejsやパッケージのアンインストールあまり記事か無いので書いておきます。“パッケージ名”これでインストールしたものは削除完了なはずです。