タグ

ブックマーク / blog.asial.co.jp (11)

  • Google MapsとMySQLの連携

    こんにちは、アシアルの中川です。 Google Mapsに表示する情報をMySQLのgeometry型で扱う方法を試してみました。 Google Mapsのある地点にマーカーを表示したりすることがある場合、 緯度・経度の情報で地点に表示させることができますが、 データベースにこの情報を保存する場合、lat(float), lng(float)とそれぞれカラムに保存する方法もあるのですが、この方法では各データの位置の関係が非常に扱いにくくなります。 Google Mapsで表示されている範囲内のデータのみ取得したい場合や、 ある地点から近い順に取得する場合などに面倒なことになります。 そこで、MySQL4.1以降で用意されている空間情報を扱う機能の「geometry」型を使用します。 「MySQL 4.1 リファレンスマニュアル :: 10 MySQL における空間情報の機能(日語)」 「

    Google MapsとMySQLの連携
  • emacsを少し便利に使う設定

    今回は、自分が.emacsに追加してちょっと便利になったスクリプトを公開したいと思います。 自分はアシアルで唯一emacsを使っていますが、なぜか社内では「エディタと言ったらvimの事だよね?えまくす()」という風潮になっており、不人気どころか存在が無いエディタですが、vimと同じく"慣れれば"便利なエディタです。 もし、vimの方が一方的に優れていたらemacsや他のエディタは消滅しているはずなので、どちら使うかは個人の趣味です。 話がそれました。つまりは好き嫌いせずに一度使ってみてください。 さて、では早速題の方へ行きましょう。 1・tramp リモートサーバののファイルを編集することが出来ます。 ローカルの環境から直接編集することが出来るので、いちいち.emacsをコピーや、環境の違いに悩まされません。 C-xC-fでファイルを開く時に、下記のように入れてやれば使うことが出来ます。

    emacsを少し便利に使う設定
  • Webアプリケーション向けの自動セキュリティスキャナ「Skipfish」を試してみました

    こんにちは、中川です。 先日、GoogleからWebアプリケーション向けの自動セキュリティスキャナ「Skipfish」が公開されたので、社内で利用しているCakePHPのアプリで試してみました。 Skipfish( http://code.google.com/p/skipfish/ )は、Webアプリケーションの脆弱性、SQLインジェクションやクロスサイトスクリプティング等を自動的に検出してくれるApache License 2.0のライセンスで公開されているオープンソースのツールです。 必要なライブラリは以下とのこと。 * GNU C Compiler * GNU Make * GNU C Library (including development headers) * zlib (including development headers) * OpenSSL (including

    Webアプリケーション向けの自動セキュリティスキャナ「Skipfish」を試してみました
  • とても便利なvimのコマンド紹介

    こんにちは。小川です。 今日はvimのコマンドでも紹介しようかなと思います。 僕はテキストエディタは大体vimを使っています。 執筆をしたときもvimでやっていましたし、PHPvimで書いています。 vimって色々コマンドがあって便利ですよね。友達vimのコマンドを教えあったりして、度々「こんな便利なコマンドがあるのか!」と驚かされます。 今日はそんなvimのコマンドの中から普段使っていて便利だなーと思うものをいくつか紹介していきます。 ちなみにShiftを押しながらのコマンドは、アルファベットキーの場合は大文字で表記します。 エンターやエスケープを押下する必要がある場合はエンターやエスケープと記述します。「:」ではじまるコマンドモードはエンターを押さないと意味がないので、そこは省略します。 同時押しは+でつなげて表記し、基的には1文字ずつ順番に押下します。 ■ページ移動 「ggで」

    とても便利なvimのコマンド紹介
  • Node.jsスクリプトの複数プロセス化を試してみました

    こんにちは、中川です。 今回もPHPには一切触れないで、node.jsについて書いていこうと思います。 node.jsといえば、サーバサイドのV8で動作するJavaScriptのため、 通常、シングルスレッドでの動作となります。 ただ、そのまま使ってしまうと、最近のマシンはマルチコアが当たり前なため、 1コアだけ使うようなプログラムではもったいないということがありますね。 そこで、node.jsでもスクリプトを複数プロセス立ち上げ、 マルチコア環境でも有効に利用できるようにしてくれるモジュールを色々試してみました。 ■環境 Ubuntu10.10 Node v0.4.0 ・spark2@2.0.11 ・cluster@0.2.4 ・fugue@0.1.1 ・multi-node@0.2.2 ※ポート: 3000番 ※Worker数: 2個 // server.default.js var 

    Node.jsスクリプトの複数プロセス化を試してみました
  • 手軽に出来るApacheモジュール開発

    こんにちは、アシアルの井川です。 今日はApacheモジュール開発方法を紹介したいと思います。難しそうに聞こえるかもしれませんが、Apacheのツール(apxs)を使うので意外と簡単に作成できます。また、今回作成するのは"hello world"をHTMLの先頭に加えるだけのシンプルなモジュールです。 当に簡単なので、ぜひ一度作ってみて下さい。 開発の流れは次の通りです。 0. 開発環境の準備 1. モジュールのひな形の作成 2. コードの記述(C言語) 3. コンパイルしてインストール 4. httpdの再起動 開発環境は既にできている前提で話を進めます。必要なパッケージは ・httpd ・httpd-devel ・gcc であり、検証環境は次の通りです。 ・CentOS 5.5 ・Apache 2.2.3 ただし、httpdにso_moduleが組み込まれている必要があります。次のコ

    手軽に出来るApacheモジュール開発
  • PHPでバイナリプログラミング その1

    はじめまして、5月から入社した久保田と申します。 九州からはるばる上京してエンジニアとして働いています。 普段はanatooというIDでブログ書いたりしています。 また、BlankaというPHP5.3で動くフレームワークを開発していたり、はてな記法パーサなどに利用されているパーサコンビネータなどを公開しています。 今後、勉強会などにも積極的に参加していこうと思いますのでお会いしたときはよろしくお願いします。 さて、この記事ではPHPでのバイナリの扱い方について説明します。 バイナリとは、ざっくりと言えばテキスト以外のバイト列のことです。 バイト列とは1バイトで構成される任意の長さを持つ列の事で、1バイトとは256通りの値を表現できる8ビットのデータのことです。 画像や音楽、映像などのバイナリは全て、テキストエンコーディングに沿わないバイト列によって表現されています。 これらのバイナリを扱う

    PHPでバイナリプログラミング その1
  • システムの品質向上のお供に使えるツール達

    こんにちは、中川です。 今回は、私が普段の開発で使っているツールを紹介したいと思います。 と言いましても、開発中というよりは、開発後半・テスト段階などでの品質向上に役立つことが多いと思われるツール達を取り上げてみました。 Firebug ・https://addons.mozilla.org/ja/firefox/addon/1843/ ・Firefoxアドオン。 ・JavaScriptのパフォーマンスチェックや、エラーチェック。ファイル・ページの読み込み時間チェックに。 ・開発初期から大活躍ですね。 HTML Validator ・https://addons.mozilla.org/ja/firefox/addon/249/ ・Firefoxアドオン。 ・HTMLの妥当性チェック。HTMLが汚いと保守フェーズに影響大ですね。 ・あまり最初は気にせず、最後のほうで一気にチェックしつつ直し

    システムの品質向上のお供に使えるツール達
  • 独自/ミラー yum リポジトリを作ろう

    % lftp -e 'mirror --delete --only-newer -X *isos/* /centos/5.4 /path/to/mirror/centos/5.4  & & exit' (site url) パスは適宜環境に合わせて読み変えてください。 2通りの方法を紹介しましたが、いずれも既にあるミラーから差分を見つけ、更新のあったパッケージのみをダウンロードしてきます。 なお、--exclude(rsync)や -X(lftp)で指定した名前のディレクトリはダウンロードされませんので、ローカルに不要なisosなどのパッケージは除外しておきましょう。 これを深夜に1日1回程度の頻度でcronで回してやれば、手軽にローカルのリポジトリを獲得することができます。 あとは、ここでDLしてきたパッケージ群をHTTPDの見えるところに置いてやり、公開するようにhttpd.confを

    独自/ミラー yum リポジトリを作ろう
  • ratproxyとSelenium IDEを組み合わせたWebアプリケーションテスト

    今回は、統合テストなどで利用できる便利ツール「Selenium IDE」と「ratproxy」を組み合わせてのテスト方法を紹介します。 どちらも良く使われるツールなので、既に取りれている方もいるとは思いますが、両ツールを組み合わせることでより効率的にテストを行えるのではないでしょうか。 さっそくテスト方法について書いていきたいと思います。 1.ratproxyをインストール 以前、ブログでも紹介されていましたが、Googleセキュリティツール「ratproxy」をインストールします。 ※参考:フリーで使えるセキュリティスキャナ・ツールまとめ ダウンロードはこちらのページから行えます。 2.Selenium IDEをインストール FireFoxのアドオンである、Webアプリケーションテストの自動化ツール「Selenium IDE」をインストールします。 Selenium IDEは、こちら

    ratproxyとSelenium IDEを組み合わせたWebアプリケーションテスト
  • フリーで使えるセキュリティスキャナ・ツールまとめ

    これで、インストールしたマシンの8080番ポートをプロキシとして指定して、チェックしたいサイトをブラウジングするだけです。 絶対に自分で管理していないサイトに対して実行しないでください。 こうしてできた、hoge.log を同梱のratproxy-report.shで解析すれば、レポートがHTMLとして出力されます。 レポートのHTMLもスクリーンショットも公開されています。 その他のプロキシ型スキャナ その他にもプロキシ型のスキャナは色々とあるのですが、RatProxyのドキュメントページに自分が調べたものは大体記述されていました。なので、簡単に触れるにとどめておきます。 1. WebScarab 2. Paros 3. Burp 4. ProxMon 5. Pantera 6. Chorizo! それぞれのプログラムについて、検索すれば使い方はわりと簡単にわかると思います。また、Pro

    フリーで使えるセキュリティスキャナ・ツールまとめ
  • 1