0
キリル文字のCMSファイルにアップロードすると、キリル文字が消えるだけです。 例:filename "мой_файл.txt"は "мой_файл"を除いた "txt"になります。 ファイル名にはwindows-1251エンコーディングがあります。シルバーストライプ:キリル文字のファイルをアップロードする際の問題
Firebugのは示しています
POST /admin/projects/Project/EditForm/field/Project/item/6/ItemEditForm/field/Projects/upload HTTP/1.1
Host: silver.rivreg.ru
User-Agent: Mozilla/5.0 (Windows NT 6.3; rv:46.0) Gecko/20100101 Firefox/46.0
Accept: application/json, text/javascript, */*; q=0.01
Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
X-Requested-With: XMLHttpRequest
Referer: http://silver.rivreg.ru/admin/projects/Project/EditForm/field/Project/item/6/edit
Content-Length: 377
Content-Type: multipart/form-data; boundary=---
とPOST]タブでは示しています
Content-Disposition: form-data; name="SecurityID"
4754dec1aad707dd63e8cc58c8e469d0bc149425
-----------------------------81762142719766
Content-Disposition: form-data; name="Projects[Uploads][]"; filename="мой_Ñайл.txt"**
Content-Type: text/plain
ïîëïîïîïîïîïîïîîûûûûûûû
-----------------------------81762142719766--
私に任意のヘルプをお願いします。
私は 'FileNameFilter config.ymlに追加:/は/ usr /家庭でforeachのために供給無効な引数():キャッシュマニフェスト(フラッシュ=すべて)と受け取っ'警告をクリアし、 ' : default_use_transliterator:偽 default_replacementsをsmolin/silver/framework/core/manifest/ConfigManifest.php on line 655'を参照してください。 FileNameFilterの動作は変更されませんでした – alex
[この記事](http://stackoverflow.com/questions/36944404/silverstripe-3-1-change-filenamefilter-default-replacements)と同じ状況 – alex
本当に ' default_replacements'を右に置いておかないと、そのエラーは間違いなくSPLがあなたの無効なYMLを解析していないことになります。あなたのシステムの要件(すなわち、キリル文字を含む)に基づいて、コアの 'FileNameFilter'にあるASCII固有のエントリを独自の正規表現で*置き換える*必要があります。あなたがしたことは、 'default_replacements'配列を"空 "として再定義し、PHPエラーを引き起こすことです。 – theruss