CentOS5.1 の yum アップデートしたら、smbwebclient で日本語パスが通らなくなりました。
何でだろと調査したら、以下の問題に抵触してるっぽいです。
嘆いても始まらないので直しました。変数 cfgDefaultLocale を新規に作成しまして、これに "ja_JP.UTF-8" なりを設定すればそれを内部的に setlocale で設定する、ってな感じです。
私は smbwebclient.php を /usr/lib/samba/webclient/ 以下に置いていまして、DocumentRoot 以下のスクリプトは以下のようにしてます。
<?php
$SMBWEBCLIENT_CLASS = 'smbwebclient_config';
include '/usr/lib/samba/webclient/smbwebclient.php';
class smbwebclient_config extends smbwebclient {
var $cfgSambaRoot = 'WORKGROUP/PROLIANT1';
var $cfgDefaultLocale = 'ja_JP.UTF-8';
var $cfgDefaultLanguage = 'ja';
var $cfgDefaultCharset = 'UTF-8';
var $cfgFacility = LOG_LOCAL5 ;
// var $cfgLogLevel = 2 ;
// all your settings ...
}
$swc = new smbwebclient_config;
$swc->Run();
?>
Charset, Language, Locale をばらばらに設定するのでちと見づらいですが、まぁ、いいかなっと。
なお、修正済みのソースは以下に添付しております。すきにつかってください。
smbwebclient-2.9-locale.php.zip