WebOS Goodies

WebOS の未来を模索する、ゲームプログラマあがりの Web 開発者のブログ。

WebOS Goodies へようこそ! WebOS はインターネットの未来形。あらゆる Web サイトが繋がり、共有し、協力して創り上げる、ひとつの巨大な情報システムです。そこでは、あらゆる情報がネットワーク上に蓄積され、我々はいつでも、どこからでも、多彩なデバイスを使ってそれらにアクセスできます。 WebOS Goodies は、さまざまな情報提供やツール開発を通して、そんな世界の実現に少しでも貢献するべく活動していきます。
Subscribe       

net2ftp : 設定ファイルの項目まとめ

本日は、 net2ftp ネタです。日本語対応で延び延びになってしまいましたが、設定ファイル関連の情報をまとめておこうと思います。もっとも net2ftp はデフォルトでもほとんど問題なく動作するので、設定方法というよりはリファレンス的に設定項目をまとめる感じにしました。微妙に内容が薄めかもしれませんが、ご了承ください(^^ゞ

settings.inc.php

net2ftp に関する全般的な設定は "$net2ftp/settings.inc.php" で行います。他の設定ファイルも同様ですが、設定はグローバルな連想配列 $net2ftp_settings の要素に値を代入することで行います。 $net2ftp/settings.inc.php で設定する要素には以下のものがあります。ただし、データベース関連の設定は除外してあります。ご了承ください。

設定名機能
email_feedbackzipファイルをメール送信するときの From アドレス
default_languageデフォルトの表示言語(日本語なら "ja")
default_skin標準のスキン($net2ftp/skin 以下のディレクトリ名を指定)
help_textフッタに表示されるリンクの文字列
help_linkフッタに表示されるリンクの URL
error_reportingたぶん PHP の error_reporting の設定
admin_username管理者のユーザー名
admin_password管理パスワード
message_browseページに表示するメッセージ
use_databaseデータベースを使用するかどうか
max_filesizeアップロード可能なファイルサイズ

前述のとおり、基本機能はデフォルトの状態でも動作します。 admin_password にパスワードを設定すれば管理者機能が使えるようになりますが、いずれの機能もデータベースが必要です。データベースを使わないときは空文字列にして使用不能にしておいたほうが安全だと思います。また、 max_filesize を変更したときは後述の PHP 側の設定も必要かもしれません。その他は必要に応じて変更すればよいでしょう。

settings_authorizations.inc.php

"$net2ftp/settings_authorizations.inc.php" は各種のアクセス制限を行う設定ファイルです。デフォルトですべてのアクセスを受け付けるようになっているので、こちらも必要に応じて設定するだけでかまいません。

設定名機能
check_authorizationチェックを実行するかどうか("yes" 固定で問題なし)
allowed_ftpservers接続を許可する FTP サーバーの配列
banned_ftpservers接続を拒否する FTP サーバーの配列
banned_addresses接続を拒否するクライアントの IP アドレスの配列
allowed_ftpserverport接続を許可する FTP サーバーのポート番号
banned_keywordsファイル・ディレクトリ名に使えない文字列

allowed_ftpserversbanned_ftpservers は単純に文字列比較でチェックされるだけなので注意してください。例えば "ftp.example.com" を banned_ftpservers に指定しても、 IP アドレスを直打ちされるとアクセスできてしまいます。事実上、サーバーを制限をするなら allowed_ftpservers でホストを限定してしまうのが確実だと思います。

settings_screen.inc.php

"$net2ftp/settings_authorizations.inc.php" では利用できる機能を制限することができます。例えば、 zip ファイルによるディレクトリのダウンロード機能を使えなくする、というようなことが可能です。デフォルトで全機能が有効になっていますので、特別な理由がなければ変更する必要はないと思います。ファイルを見ればどの項目がどの機能に対応するかは一目瞭然かと思うので、各項目の説明も省略です。ご了承ください。

最大アップロードサイズを変更する

"$net2ftp/settings.inc.php" の max_filesize でアップロードできるファイルの最大サイズを増やしても、一定以上のサイズがアップロードできない場合があります。これは PHP 側の設定でアップロードサイズが制限されているためです。これを変更するための .htaccess ファイルのサンプルが "$net2ftp/htaccess.txt" として用意されていますので、これを ".htaccess" という名前に変更することで、約 200Mbyte までのファイルがアップロードできるようになります。このファイルの内容は以下のとおりです(version 0.95 のもの)。

php_value max_execution_time 1200
php_value memory_limit 200M
php_value post_max_size 200M
php_value upload_max_filesize 200M

それぞれの項目の意味は以下のとおりです。

設定項目機能
max_execution_timeスクリプトの最大実行時間を秒単位で指定
memory_limitスクリプトが確保できる最大メモリ容量
post_max_sizePOST メソッドでアップロードできる最大サイズ
upload_max_filesizeファイルアップロードの最大サイズ

スクリプトの最大実行時間は Apache 側の Timeout 時間を超えることはできないので、この値も合わせて変更する必要があります。具体的には以下のような設定を httpd.conf などに記述すればよいでしょう。

Timeout 1200

Timeout 時間の設定はサーバー全体で一律にしか設定できないので注意してください。

以上、本日は net2ftp の設定項目をご紹介しました。個人的にはすでにこの blog のメンテナンスなどに net2ftp を大活用していて、とても便利に使っています。普通の FTP アップロード機能しかない Web スペースを CMS 感覚で編集できるのは素晴らしいです。 FTP を頻繁に使う方は、ぜひ試してみてください!

関連記事

この記事にコメントする

Recommendations
Books
「Closure Library」の入門書です。
詳しくはこちらの記事をどうぞ!
Categories
Recent Articles