職業プログラマの休日出勤

職業プログラマによる日曜自宅プログラミングや思考実験の成果たち。リアル休日出勤が発生すると更新が滞りがちになる。記事の内容は個人の意見であり、所属している(いた)組織の意見ではない。

ファイル転送

Webサーバなどなど、何かしら遠隔地のサーバにファイルを転送するとき、皆さんは何をお使いでしょうか?

感覚的な話になりますが、一般的には SCPSFTP が多いかとは思います。次に多いのはWebコンソール(コンパネ)over HTTPS でしょうか。エンタープライズ(業務用)だと HULFT なんてものもありますね。
一部では平文のFTPを使っていたり、Webコンソールを平文のHTTPで使っていたりする環境も残っているでしょうけど、そんなサーバや運用体制はさっさと滅びてしまえばいいと思っています。

さて、本題。もしも平文FTPでファイル転送しているWebサーバの管理をぽいっと任されてしまったとき、どうしますか? 流石にそのままの運用で行くのは気分が良くありません。
かといって本格的なコンパネを入れるのはちょっと面倒臭い。。
そんな時に便利そうなものを見つけたので紹介しておきましょう(いや、実際は単なる備忘録です)。そのサーバがPHPSSLを利用できるのなら、きっと役に立ちます。

PHP File Manager

...:::: PHP File Manager
GPL/LGPL/MPL で配布されているこのソフトは、なんとPHPファイル1つだけで動作するのです(配布パッケージにはもちろんライセンスに関するファイルがもう一つ含まれていますが、動作に使うのはphpファイル1個だけです)。インストール手順はご想像の通り、DocumentRoot以下のどこか好きな場所に「置くだけ」。
PHPだけで動作するということは、(Apacheで運用する場合)ファイルの読み書きもApacheプロセスの権限で実行されるので事前の権限設定が重要になってきますが、PHPファイル1個だけで動作するというのは素晴らしい!

また、zipなどの圧縮/解凍にも対応しているので、zipで上げてサーバ上で解凍という現代では当たり前となっている運用も可能です。

背景

なぜこの2013年にもなってこんな話をしているのかと言うと、実際にそういう惨めなサーバの面倒を見なくちゃいけない状況に追い込まれたからです。Australiaは非常に良い国ではありますが、通信回線は日本よりも随分と弱く、レンタルサーバの環境もやはり弱いのです。この国の数少ない難点の一つだと言えます。