每当我尝试通过 October Cms 媒体管理器上传 .docx 文件时,我都会收到此消息 “出于安全原因,所使用的文件类型被阻止” 如何覆盖允许的文件扩展名?
我正在使用 BUILD 415
octobercms 仅允许文件管理器中的某些扩展名。您需要手动添加特定的一项。
在 CMS 配置中添加 docx 扩展名。在 config/cms.php 中,添加:
'fileDefinitions' => [
'assetExtensions' => array_merge(FileDefinitions::get('assetExtensions'), ['docx']), ],
您可以在此处找到支持的扩展列表:https://github.com/octobercms/library/blob/master/src/Filesystem/Definitions.php
我只是通过将完整覆盖显式添加到 config/cms.php 才能使其工作。就我而言
'文件定义' => [ 'assetExtensions' => [ 'jpg'、'jpeg'、'bmp'、'png'、'webp'、'gif'、'svg'、'js'、'地图'、'ico'、'css'、'less'、'scss ', 'ics'、'odt'、'doc'、'docx'、'pdf'、'swf'、'txt'、'xml'、'ods'、'xls'、'xlsx'、'eot'、'woff ', 'woff2'、'ttf'、'flv'、'wmv'、'mp3'、'ogg'、'wav'、'avi'、'mov'、 “mp4”、“mpeg”、“webm”、“mkv”、“rar”、“zip”、“pptx”、“ppt”、“pdf”、“zip” ] ],
尝试使用 array_merge 附加到数组时出现错误。必须重写整个事情是不优雅的,但至少它有效。有点惊讶的是,这在用户界面中是不可配置的!
'fileDefinitions' => [ 'defaultExtensions' => [ 'jpg', 'jpeg', 'bmp', 'png', 'webp', 'gif', 'svg', 'js', 'map', 'ico', 'css', 'less', 'scss', 'ics', 'odt', 'doc', 'docx', 'pdf', 'swf', 'txt', 'xml', 'ods', 'xls', 'xlsx', 'eot', 'woff', 'woff2', 'ttf', 'flv', 'wmv', 'mp3', 'ogg', 'wav', 'avi', 'mov', 'mp4', 'mpeg', 'webm', 'mkv', 'rar', 'zip','pptx', 'ppt', 'pdf', 'zip' ] ],
使用“defaultExtensions”代替“assetExtensions”。