P_BLOG本体の改造
include/func_base.inc.php
/* * Load Plug-in Modules */ function include_plugin($mode) { global $cd, $cfg, $plugin; + static $done; + + if ($done) return; + if ($handlerDir = @opendir($cd . '/include/user_include/plugins')) { while ($filename = readdir($handlerDir)) { if ($filename != '.' && $filename != '..' && preg_match('/^plg_.+\.inc\.php$/', $filename)) { include_once $cd . '/include/user_include/plugins/' . $filename; } } } + + $done = true; }
PHPがセーフモードの場合、mb_send_mail の additional_parameters が無効になるので、エラーとなる。この場合、./var/feedback/contents/feedback.inc.php の94行目を次のように変更する。(5つ目のパラメータを外すだけ)
if (mb_send_mail($cfg['sendmail_address'], $subject, $message, $header, $param)) {
↓
if (mb_send_mail($cfg['sendmail_address'], $subject, $message, $header)) {
画像などのバイナリファイルを「resources」フォルダにアップロードすると、FTPソフトなどで、そのファイルのダウンロードやパーミッションの変更が出来なくなる。 これは、アップロードされたファイルのパーミッションが「600」となるのが原因のよう。(うちのサーバーだけの問題かも?)
対策として、アップロードされたファイルのパーミッションを「644」に変更するように、ファイル admin/include/fnc_admin.inc.php の中の関数 function file_uploaded() に1行追加。
function file_uploaded() { global $cfg, $lang; // upload binary resources to the specified "resources" directory $file_uploaded = '<table summary="Uploaded Files">'. '<tr><th colspan="3" abbr="Resource Directory">'.$lang['resource_dir'].' : '. '<strong><a href="'.$cfg['uploaddir'].'">'.$cfg['uploaddir']."</a></strong></th></tr>\n"; for ($i = 1; $i < $cfg['up_img_max']+1; $i++){ if(isset($_FILES['myfile'])) { if (move_uploaded_file($_FILES['myfile']['tmp_name'][$i], $cfg['uploaddir'] . $_FILES['myfile']['name'][$i])) { + ///// 追加ここから ///// Change file mode to 644 + chmod ($cfg['uploaddir'] . $_FILES['myfile']['name'][$i], 0644); + ///// 追加ここまで ///// $file_uploaded .= '<tr><td>'.$lang['file'].$i.'</td><td>'.$lang['upload_ok']."</td>\n". '<td>'. $lang['file_name'].' : '.$_FILES['myfile']['name'][$i].'<br />'. $lang['file_type'].' : '.$_FILES['myfile']['type'][$i].'<br />'. $lang['file_size'].' : '.$_FILES['myfile']['size'][$i].' bytes<br />'. $lang['temp_name'].' : '.$_FILES['myfile']['tmp_name'][$i].'<br />'. $lang['error_msg'].' : '.$_FILES['myfile']['error'][$i].'<br />'. '</td></tr>'; } else { $file_uploaded .= '<tr><td>'.$lang['file'].$i.'</td><td>'.$lang['no_files_added'].'</td>'. '<td>0</td></tr>'; } } } $file_uploaded .= '</table>'; return $file_uploaded; }
AND OR
P_BLOG本体の改造
負荷軽減
include/func_base.inc.php
PHPがセーフモードの場合、mb_send_mail の additional_parameters が無効になるので、エラーとなる。この場合、./var/feedback/contents/feedback.inc.php の94行目を次のように変更する。(5つ目のパラメータを外すだけ)
↓
アップロードした画像がFTPソフトで操作出来ない
画像などのバイナリファイルを「resources」フォルダにアップロードすると、FTPソフトなどで、そのファイルのダウンロードやパーミッションの変更が出来なくなる。 これは、アップロードされたファイルのパーミッションが「600」となるのが原因のよう。(うちのサーバーだけの問題かも?)
対策として、アップロードされたファイルのパーミッションを「644」に変更するように、ファイル admin/include/fnc_admin.inc.php の中の関数 function file_uploaded() に1行追加。