2013年10月28日月曜日

OSがマーベリックスに変わって

iBooksが出来た事で、
・電子書籍をipadとかに転送するのにibooksとiTunesを立ち上げないと行けないので、一つ立ち上げるモノが増えて面倒になった。
・転送がかなりスムーズになった。多分OSがMavericksになって、消費電力云々がよくなるとか言ってた気がするんで、無駄な処理が無くなったんだと思う。いつも通りやっても、転送も高速になった。
・んでOSマベ関係ないけど、iOS7になって、ipad側のiBooksも反応がよい。今までの微妙なキャッシュ感がなくなり、javascriptとかが都度状況に応じて反応してくれている。これcssのメディアクエリとかもちゃんと反応するんじゃないだろうか。面倒だから試してないけど(ePubの話ね)

普通OSの常識に洗脳されると、OSが新しくなる度に、古いPCは重くなるけど、今回のOSの場合は、軽くなると思う。無料で公開する意味が少し分る。アップデートしてもらった方が、いろいろクレームやら何やらのサポート経費が落ちると思う。みんなOSマベにすることでappleもプラスが大きいんだと思う。

つまり、
やったね!

2013年10月24日木曜日

AAの文字を生成するWEBサービス

ここ
Text to ASCII Art Generator (TAAG)

フォントは、到底読めそうもないものが多いけど、スクロールして
下の方で選択すると、キレイだよ

2013年10月14日月曜日

やべー、sails0.9、やべー

なんかどうも0.9で変わったのか、このバージョンなんか変なことになるー

例えば、プロジェクト作って、npm installすると何かがおかしくなる。とりあえずやっちまうと、まともなサイトつくれない...

foreverもほかのプロセスとごっちんこで、不安定だからsupervisorでもいれようとしたけど、どうやんの??なんか各サイト書いてること違いすぎてようわからん。

このフレームワーク、しばらく採用しない方がいいんじゃないだろうか

で。。。。とりあえずこうしてみた

nohup sails lift >  result.txt &

あばば...

ちなみに実行時にプロセスIDでるけど、忘れた場合のgrepは以下です。

ps -ef | grep "sails lift"
kill -9 pid

でもこれで、他に影響受けずに動く、動くと楽しい

2013年10月9日水曜日

[PHP][PDO][centos]installする方法

ざっくりと、インストールする方法をメモっておく

1. yum install php-mysql

2. vi /etc/php.ini
以下、追記
extension=pdo_mysql.so;
extension=pdo.so;

3. apache再起動
/etc/init.d/htttpd configtest
/etc/init.d/htttpd graceful

これだけだけど、色んな方法している人がいて、なかなか理想のページが
ヒットしなかったんで、メモメモです。

2013年10月6日日曜日

node.jsのsailsフレームワークでドメインの制御

node.jsのsailsフレームワークは、流行っても一時だと思う。expressのラッピングとは聞いていたけど、node_modulesのexpressの中とかに入っていてイマイチexpressの拡張モジュールではなくて、ラップして名前を変えたのか理由が分らない。

で、今回はドメインを割り当てたんだけど、そのサーバはいくつかドメインを振っていて、nodeはwebとは違うポートをあててる訳。
で、そのポートだとその割り当てたドメインならなんでも閲覧出来ちゃう訳。つまりsailsはドメインによる制限がされてない。configで設定するところはあるけどね。

で、TODOがあって、

****Project/node_modules/sails/lib/express/index.jsに
// TODO: Add support for error domains
とかメモってあるのね。これがsails側のTODOなのかexpress側のTODOなのかも知らん

でもhostの制御ってcreateServerのリクエストを見ないといけないから、そこの記述してる部分じゃ制御できないと思うのよ。

で、createServerしてるとこが
if (sails.config.express.serverOptions) {
sails.express.server = createServer(sails.config.express.serverOptions, sails.express.app);
}
else sails.express.server = createServer(sails.express.app);
TODOのちょっと上の記述

で、sails.express.appの記述が

***Project/node_modules/sails/node_modules/express/node_modules/connect/lib/connect.js

function app(req, res, next){ app.handle(req, res, next);}

これね。ここでこのフレームワークの難解さが分る訳。もう、なんのFWの追加したモジュールに追記してるんだか。入れ子すぎる。いや、わかるんだけど、FWをラッピングってのが、そもそも異様だよね。PHPのシンフォニーもひどい印象あったけど、、、PHPとか有名なフレームワークでもヒドいコーディングが多いからシンプルな自社フレームワークを使う会社結構あるけど、node.jsも同じ状況でゴリゴリ肥大化してしまっているんじゃないかと思う...

まぁいいや、それで今後のアップデートを期待して今回はここに固定で肉付けね

  function app(req, res, next){
    //sails.log.debug(decodeURI(req.headers.host));
    if(decodeURI(req.headers.host) != "限定したいドメイン"){
      res.writeHead(404);
      res.end('404 not found');
      return;
    }
  app.handle(req, res, next);
  }

とりあえずこんな感じで書きました。だいたい予想だにしないドメインやポートでのアクセスを防ぐためなので、とりあえずsailsで決まったドメイン以外は404にしてくれればいいので、これでいいかな。

node.jsは、これからもっと普及していい感じのFWがでるといいっすね

今回FWつかって、足りない機能は結局ソース覗いて追記しないといけなくなって、これでどっかの会社組織で導入するってなると、やはりいくつかFWを覗いて、ソースを参考にして自社で必要最低限の自社FWを作るとかじゃないと、責任取れないと思う。とりあえずはおもちゃとしてガンガン使っていくしかない。今回のケースもしょっちゅうあると思うんだよね。