OpenPNE 2.12 カスタマイズ(upload編)
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[OpenPNE 2.12 カスタマイズ]]
&lastmod;
#contents
----
*OpenPNE 2.12 カスタマイズ upload容量編 [#k5f2e9e0]
デフォルトのデータアップロードは300kbの制限であるが、メガ...
http://bestpc.s153.xrea.com/pukiwiki/pukiwiki.php?%C5%BA%...
OpenPNE2.0で、画像などのファイルを添付する場合に、ファイ...
**添付ファイルの処理の流れ † [#o8492d04]
OpenPNE2.0では、日記やコミュ二ティ掲示板でメッセージに画...
アップロードされた画像ファイルは、
ファイル形式(拡張子)とファイルサイズをチェックしてOKで...
BASE64方式でエンコード(データの変換)して、
データベース(MySQL)に保存します。
/openpne/webapp/lib/db/write/image.php
の
db_image_insert_c_image関数内で、BASE64方式エンコード実行
base64_encode()を使うとデータサイズは、4/3倍になります。(...
例)75KBの画像ファイルなら、100KBの文字列に変換されます。
変換後のデータを、MySQLのc_imageテーブルにあるLONGBLOB型...
**OpenPNEの設定 [#h200c5b5]
OpenPNEの設定ファイルで、添付ファイルのサイズ上限を指定し...
/openpne/config.php
の200行目付近にある
// アップロード画像のファイルサイズ制限(KB)
define('IMAGE_MAX_FILESIZE', 1024);
で、定数「IMAGE_MAX_FILESIZE」の値を指定します。
単位はキロバイト(KB)となっています。
例)10240と指定した場合、10240KB=10MBまでOKとなります。
**PHPの設定 [#zecd2aaf]
WebサーバのPHP設定で、ブラウザーからWebサーバに対して転送...
phpinfo()関数
で、PHPの設定を確認します。
例)以下のようなPHPスクリプトを、phpinfo.phpのようなファ...
<?php
phpinfo();
?>PHP
の設定項目(ディレクティブ)がズラズラ表示されるので、以...
|Directive|Local Value|Master Value| |
|memory_limit |128M|128M|スクリプトが確保できる最大メモリ...
|post_max_size | 8M| 8M|POSTデータに許可される最大サイズ...
|upload_max_filesize|2M|2M|アップロードされるファイルの最...
(参考)PHP の設定を行うための php.ini ディレクティブ
http://jp.php.net/manual/ja/ini.php
***PHPの設定ファイルの位置を確認 [#t088b419]
ns# /usr/local/bin/php -i | grep -i configuration
Configuration File (php.ini) Path => /usr/local/etc
Loaded Configuration File => /usr/local/etc/php.ini
Configuration
ns#
***PHPの設定ファイルを作る [#j5629944]
デフォルト以外の部分をphp.iniとして記述する
# touch /usr/local/etc/php.ini
# vi /usr/local/etc/php.ini
[PHP]
; Maximum size of POST data that PHP will accept.
post_max_size = 12M
; Maximum allowed size for uploaded files.
upload_max_filesize = 10M
として、設置。
# apachectl restart
して、設定を反映する。phpinfo.php で確認
|memory_limit|128M|
|post_max_size|12M|
|upload_max_filesize|10M|
memory_limit ≧ post_max_size ≧ upload_max_filesize
という大小関係で設定されています。
WebサーバのPHP設定で、upload_max_filesize のサイズより大...
upload_max_filesize で指定してあるサイズより、小さなサイ...
OpenPNEで容量の大きなファイルを添付したい場合は、PHPの設...
※レンタル共用サーバを使っている場合、レンタル会社のセキュ...
**データベースの設定 [#yf7c93fc]
アップロードされた添付ファイルは、データベースに保存する...
(データベースに保存するときのデータサイズは、元の添付フ...
そして、Webサーバ(OpenPNE)から、データベースサーバ(MyS...
このとき、データベース側の設定によって、転送できるデータ...
この上限よりも大きなサイズのデータをデータベースに送りつ...
=データの保存に失敗
=添付ファイルのアップロードに失敗
**MySQLのメッセージバッファサイズ [#vaf5987b]
max_allowed_packet
Webサーバ(クライアント)とデータベース(サーバ)間で送信...
データベースで使用可能なメモリ量と、
通信バッファのサイズ(max_allowed_packet)で決まります。
**max_allowed_packetの確認 [#of667d60]
MySQLの設定変数のうち、max_allowed_packetを設定
/usr/local/etc/my.conf
max_allowed_packet = 16M
ns# /usr/local/etc/rc.d/mysql-server restart
Stopping mysql.
Waiting for PIDS: 964.
Starting mysql.
ns# mysql --help を実行して、設定を確認する。
(参考)
BLOB型について
http://dev.mysql.com/doc/refman/4.1/ja/blob.html
サーバパラメータについて
http://dev.mysql.com/doc/refman/4.1/ja/server-parameters....
SHOW VARIABLESについて
http://dev.mysql.com/doc/refman/4.1/ja/show-variables.html
**その他の要素 [#d6764074]
インターネットの回線が遅いと、ファイルのアップロード処理...
ファイルのアップロードに失敗する場合は、インターネットの...
**まとめ [#p8087276]
アップロードできる添付ファイルの容量は、
-OpenPNEの設定
-PHPの設定
-MySQLの設定
の三つで決まります。
ファイルのアップロードに失敗する場合はチェックしてみまし...
*OpenPNE 2.12 カスタマイズ ファイルアップロード機能編 [#s...
ファイルアップロード機能を有効にするには、/OpnePNE_DIR/co...
///
// ファイルアップロード機能
///
// ファイルアップロード機能を使用するかどうか
//define('OPENPNE_USE_FILEUPLOAD', false);
define('OPENPNE_USE_FILEUPLOAD', true);
// アップロードファイルのファイルサイズ制限(KB)
//define('FILE_MAX_FILESIZE', 300);
define('FILE_MAX_FILESIZE', 10000);
// 許可する拡張子のリスト(カンマ(,)区切り)
// 未指定の場合は全て許可
//define('FILE_ALLOWED_EXTENTIONS', 'pdf,xls,ppt,zip');
define('FILE_ALLOWED_EXTENTIONS', 'pdf,xls,ppt,zip,jpg,p...
の様に編集します。
この機能は、コミュニティのトピックのところに実装されてい...
コミュニティを作って、トピックを追加する画面で、画像を添...
終了行:
[[OpenPNE 2.12 カスタマイズ]]
&lastmod;
#contents
----
*OpenPNE 2.12 カスタマイズ upload容量編 [#k5f2e9e0]
デフォルトのデータアップロードは300kbの制限であるが、メガ...
http://bestpc.s153.xrea.com/pukiwiki/pukiwiki.php?%C5%BA%...
OpenPNE2.0で、画像などのファイルを添付する場合に、ファイ...
**添付ファイルの処理の流れ † [#o8492d04]
OpenPNE2.0では、日記やコミュ二ティ掲示板でメッセージに画...
アップロードされた画像ファイルは、
ファイル形式(拡張子)とファイルサイズをチェックしてOKで...
BASE64方式でエンコード(データの変換)して、
データベース(MySQL)に保存します。
/openpne/webapp/lib/db/write/image.php
の
db_image_insert_c_image関数内で、BASE64方式エンコード実行
base64_encode()を使うとデータサイズは、4/3倍になります。(...
例)75KBの画像ファイルなら、100KBの文字列に変換されます。
変換後のデータを、MySQLのc_imageテーブルにあるLONGBLOB型...
**OpenPNEの設定 [#h200c5b5]
OpenPNEの設定ファイルで、添付ファイルのサイズ上限を指定し...
/openpne/config.php
の200行目付近にある
// アップロード画像のファイルサイズ制限(KB)
define('IMAGE_MAX_FILESIZE', 1024);
で、定数「IMAGE_MAX_FILESIZE」の値を指定します。
単位はキロバイト(KB)となっています。
例)10240と指定した場合、10240KB=10MBまでOKとなります。
**PHPの設定 [#zecd2aaf]
WebサーバのPHP設定で、ブラウザーからWebサーバに対して転送...
phpinfo()関数
で、PHPの設定を確認します。
例)以下のようなPHPスクリプトを、phpinfo.phpのようなファ...
<?php
phpinfo();
?>PHP
の設定項目(ディレクティブ)がズラズラ表示されるので、以...
|Directive|Local Value|Master Value| |
|memory_limit |128M|128M|スクリプトが確保できる最大メモリ...
|post_max_size | 8M| 8M|POSTデータに許可される最大サイズ...
|upload_max_filesize|2M|2M|アップロードされるファイルの最...
(参考)PHP の設定を行うための php.ini ディレクティブ
http://jp.php.net/manual/ja/ini.php
***PHPの設定ファイルの位置を確認 [#t088b419]
ns# /usr/local/bin/php -i | grep -i configuration
Configuration File (php.ini) Path => /usr/local/etc
Loaded Configuration File => /usr/local/etc/php.ini
Configuration
ns#
***PHPの設定ファイルを作る [#j5629944]
デフォルト以外の部分をphp.iniとして記述する
# touch /usr/local/etc/php.ini
# vi /usr/local/etc/php.ini
[PHP]
; Maximum size of POST data that PHP will accept.
post_max_size = 12M
; Maximum allowed size for uploaded files.
upload_max_filesize = 10M
として、設置。
# apachectl restart
して、設定を反映する。phpinfo.php で確認
|memory_limit|128M|
|post_max_size|12M|
|upload_max_filesize|10M|
memory_limit ≧ post_max_size ≧ upload_max_filesize
という大小関係で設定されています。
WebサーバのPHP設定で、upload_max_filesize のサイズより大...
upload_max_filesize で指定してあるサイズより、小さなサイ...
OpenPNEで容量の大きなファイルを添付したい場合は、PHPの設...
※レンタル共用サーバを使っている場合、レンタル会社のセキュ...
**データベースの設定 [#yf7c93fc]
アップロードされた添付ファイルは、データベースに保存する...
(データベースに保存するときのデータサイズは、元の添付フ...
そして、Webサーバ(OpenPNE)から、データベースサーバ(MyS...
このとき、データベース側の設定によって、転送できるデータ...
この上限よりも大きなサイズのデータをデータベースに送りつ...
=データの保存に失敗
=添付ファイルのアップロードに失敗
**MySQLのメッセージバッファサイズ [#vaf5987b]
max_allowed_packet
Webサーバ(クライアント)とデータベース(サーバ)間で送信...
データベースで使用可能なメモリ量と、
通信バッファのサイズ(max_allowed_packet)で決まります。
**max_allowed_packetの確認 [#of667d60]
MySQLの設定変数のうち、max_allowed_packetを設定
/usr/local/etc/my.conf
max_allowed_packet = 16M
ns# /usr/local/etc/rc.d/mysql-server restart
Stopping mysql.
Waiting for PIDS: 964.
Starting mysql.
ns# mysql --help を実行して、設定を確認する。
(参考)
BLOB型について
http://dev.mysql.com/doc/refman/4.1/ja/blob.html
サーバパラメータについて
http://dev.mysql.com/doc/refman/4.1/ja/server-parameters....
SHOW VARIABLESについて
http://dev.mysql.com/doc/refman/4.1/ja/show-variables.html
**その他の要素 [#d6764074]
インターネットの回線が遅いと、ファイルのアップロード処理...
ファイルのアップロードに失敗する場合は、インターネットの...
**まとめ [#p8087276]
アップロードできる添付ファイルの容量は、
-OpenPNEの設定
-PHPの設定
-MySQLの設定
の三つで決まります。
ファイルのアップロードに失敗する場合はチェックしてみまし...
*OpenPNE 2.12 カスタマイズ ファイルアップロード機能編 [#s...
ファイルアップロード機能を有効にするには、/OpnePNE_DIR/co...
///
// ファイルアップロード機能
///
// ファイルアップロード機能を使用するかどうか
//define('OPENPNE_USE_FILEUPLOAD', false);
define('OPENPNE_USE_FILEUPLOAD', true);
// アップロードファイルのファイルサイズ制限(KB)
//define('FILE_MAX_FILESIZE', 300);
define('FILE_MAX_FILESIZE', 10000);
// 許可する拡張子のリスト(カンマ(,)区切り)
// 未指定の場合は全て許可
//define('FILE_ALLOWED_EXTENTIONS', 'pdf,xls,ppt,zip');
define('FILE_ALLOWED_EXTENTIONS', 'pdf,xls,ppt,zip,jpg,p...
の様に編集します。
この機能は、コミュニティのトピックのところに実装されてい...
コミュニティを作って、トピックを追加する画面で、画像を添...
ページ名: