北青山通信 – from aoyama » 2008 » 4月 » 16
何か長いタイトルになってしまいました。これは今回開発に入っている案件でイライラしていることです。
Webサイトを開発する上で、必ずテストサーバーや本番サーバーに作成したファイルをアップしなければいけません。テスト担当者にテストしてもらうためにも、毎回テストサーバーにアップします。
レンタルサーバーと契約しているのであれば、
- FTPで接続してファイルをアップ。
- scpでファイルをアップ。
などで行うかと思います。通常は前者でしょうか。FTPのポートを開けたくないというのであれば、後者のsshのサーバーを用意してscpでしょうか。
社内にテストサーバーがあれば、
- ファイルをテストサーバーのネットワークドライブにしてコピー。
などもできます。
しかし、どのファイルがアップされたが把握するのは面倒な場合、
- Subversionでファイルをバージョン管理させて、コミットしてテストサーバーでアップデートする。
なども可能です。本番サーバーからはSVNのログからファイルをFTPやSCPにアップするという手順になります。
まあ、普通はこれでいいのですが、今回の案件はちょっと面倒です。FTPでアップする前に、VPNでリモート接続しなければいけません。
いちいちVPNに接続してから、FTPでアップするとなると、その間は外部のインターネットに接続できなくなってしまいます。しかも、テストサーバーへのアクセスはインターネット経由ですので、アップした後にVPNを切断しなければいけないという面倒さ。
サーバー管理者に言わせるとVPNと使うのはセキュリティのためと言うことらしいが、VPNのID/パスワードを漏れてしまうとダメではないか? それにFTPで使うなんて、ちょっとおかしい。
それにVPNで接続/切断という工程が入るので、リズムが切れる。
お付き合い会社で一番良い方法であると思ったのは、sshの公開・秘密キーを使ってscpでファイルをアップさせること。この方法だと、
- ユーザーの認証もコントロールできる。
- サーバーとの間も暗号化されるのでFTPよりは安全。
- 接続したままで、インターネットにあるサーバーを確認できる。
- FTPサーバーを立てる必要はない。
のメリットがあります。
ちょっとしたことでも、開発の人間のモチベーションを下げてしまうのです。
このページは xfy Blog Editor を利用して作成されました。
現在、OpenPNEを使った専門家向けのSNSサイトを開発しています。簡単に改造点を言うと、SNS部分はほぼOpenPNEの機能を使って、その上位に専門家が所属する団体でグルーピングするとものです。
OpenPNEのような大きなオープンソースのシステムの改造は普通に考えると難しいと思いますが、OpenPNEに限っていうとそんなに難しくはありません。
これは、OpenPNE独自のフレームワーク(こう言ってしまっていいのでしょうね)がシンプルな考え方(難しいことができないというのではなくて)に基づいているので、とても見通しがよいからです。
どのページがそのプログラムとテンプレートで構成されているかというのは、ページのパラメータをみれば一目瞭然です。ページの出力とその後の処理をきちんと分けられているので、フォーム->処理->結果表示という一般のWebアプリケーションの自然なフローが、ルールに乗っ取ったファイルの命名方法になっています。
同じオープンソースでもXOOPSとは大きな違い。XOOPSのモジュール改造はとても苦労します。
もし、OpenPNEを使ったサイトをお考えの方がいらっしゃったらご連絡ください。(最後は宣伝モードでした・・・。)
このページは xfy Blog Editor を利用して作成されました。
xfy Blog Editor を使って、このブログを書いていますが、どうもマシンによって投稿日時が時差を無視して+9時間で投稿されます。
すべてのマシンでこの現象が発生しないところがやっかいなところです。発生しているのは、WindowsXPのマシンです。xfy Blog Editorのコミュニティフォーラムによると、Vistaで発生するといった報告がありましたが、こちらはVistaではOKです。とりあえずxfy Blog Editorのコミュニティフォーラムに報告をあげておきました。
まあ、手で投稿日時を修正すればいいのですが、ちょっと面倒ですね。
でもXOOPSのWordPressモジュールから普通のWordPressに変えましたが、xfy Blog Editorはこの件以外は快調です。エントリ再取得でのXMLエラーが出なくなりました。xfy Blog Editorはお勧めです。
このページは xfy Blog Editor を利用して作成されました。