カテゴリー別アーカイブ: Tips

php.iniの変更推奨箇所

Piccy Cabinetでは、写真のアップロード時にZIP形式の圧縮ファイルでのファイルアップロードを行います。よってPHP動作環境の、利用可能メモリサイズやクライアントが送信可能なファイルサイズ(POSTデータのサイズ)を、変更する必要があります。PHP動作環境の変更には、php.iniファイルを変更する必要があります。

【php.iniの変更】
/etc/php.iniファイルや、PHPインストール直下などに格納されている、php.iniファイルの以下のパラメータを変更します。(Aphace環境下で動作するPHPが利用するphp.iniの設定を変更する必要があります。phpinfo()でphp.iniの場所を確認して下さい。)
変更1:memory_limit = xxxM
変更2:post_max_size = xxxM
変更3:upload_max_filesize = xxxM
(G(ギガ),M(メガ),K(キロ)が利用可能です。G(ギガ) は PHP 5.1.0 以降で使用可能です。
使用可能メモリに制限を設けたくない場合は、 「-1」 を指定してください。

『注意』
(memory_limit) >= (post_max_size) >= (upload_max_filesize)にしないとupload_max_filesizeで指定したサイズのファイルをサーバにアップロードすることが出来ません。

PEARがインストール出来ない環境でのPEAR利用方法

レンタルサーバ(特に共有タイプのレンタルサーバ)では、PEARが導入されていないケースがあります。
(メジャーなパッケージはインストールされているが、最近のパッケージがインストールされていないケースもあります)

PEAR自体は、非常にメジャーなライブラリ集です。親切なレンタルサーバ管理会社だとインストールをお願いすれば、インストールして頂けると思います。

『PEARがインストールされていない環境におけるPEAR利用方法』
『前提条件』
includeパスの指定が出来ること。
代表的なincludeパスの指定方法として、以下3つがあります。(一応推奨順です)
○php.iniのinclude_pathを設定
○.htaccessの セクションを設定
○実行スクリプト中にini_set関数を用いてパスを設定

もし、includeパスの指定が出来ない場合は、PEARが必要なプログラムと同じフォルダーにインストールしてしまいましょう。

これらの方法は、PEAR公式サイトより推奨されていません。出来る限りPEARの提供するインストーラを用いたインストールを行ってください。

『利用手順』
1、PEARサイトより必要なパッケージをダウンロードします。(自分のWindows環境などで、PEARコマンドで必要パッケージを集めると抜けも無くなり、便利です。)
[Dependencies]とあるパッケージも依存関係にあるパッケージとなり必要になります。合わせてダウンロードして下さい。 Piccy Cabinetに必要なPEARファイル群は、こちら。(ZIPファイルを解凍後、サーバーにアップロードして下さい。)
2、ダウンロードしたファイル類を解凍し、サーバにアップロードします。
3、PEARにパスを通す設定を行います。(以下、PEARをアップロードしたフォルダを「/home/lib/PEAR」の場合で説明します。)
ケース1:php.iniのinclude_pathを設定
・Unixの場合
include_path = ".:/home/lib/PEAR"

・Windowsの場合
include_path = ".;/home/lib/PEAR"

※ UnixとWindowsの違いは、パスの先頭の「.:」と「.;」です。

ケース2:.htaccessの セクションを設定
・Unixの場合

php_value include_path ".:/home/lib/PEAR"

・Windowsの場合

php_value include_path ".;/home/lib/PEAR"

※ UnixとWindowsの違いは、パスの先頭の「.:」と「.;」です。
※ phpのバージョンに合わせて、 セクションの指定を変更して下さい。

ケース3:実行スクリプト中にini_set関数を用いてパスを設定
・Unixの場合
$path = ini_get(‘include_path’);
$path .= ":/home/lib/PEAR";
ini_set(‘include_path’, $path);

・Windowsの場合
$path = ini_get(‘include_path’);
$path .= ";/home/lib/PEAR";
ini_set(‘include_path’, $path);

※ UnixとWindowsの違いは、パスの先頭の「.:」と「.;」です。

以上、正式な手順でないため、実際の動作テストを十分に行い、自己責任でご利用下さい。

PEARインストール方法

前提PEARライブラリのインストール

PEARライブラリは、PHPのインストールフォルダー直下で、PEARコマンドを用いることによって、(PEARライブラリの)インストールが可能です。
PEARコマンドが利用できない場合は、こちらの代替方法を参照して下さい。


pear config-set preferred_state beta (一部Bata版のパッケージもあるのでこのコマンドが必要です。)
pear install --onlyreqdeps File_Archive
pear install --onlyreqdeps DB
pear install --onlyreqdeps Auth
pear install --onlyreqdeps Config
pear install --onlyreqdeps HTTP_Download
pear install --onlyreqdeps XML_Serializer
pear install --onlyreqdeps XML_Parser
pear install --onlyreqdeps XML_Util
pear install --onlyreqdeps Archive_Zip

※チャネルアップデートのWARNINNGが出たら、以下のコマンドを実行。
 pear update-channels

<関連ページ>
PEAR公式ホームページ:http://www.go-pear.org/manual/ja/
インストール方法:http://www.go-pear.org/manual/ja/installation.php
PEARのパッケージマネージャ導入:http://www.go-pear.org/manual/ja/installation.getting.php