当前位置: 首页 > 工具软件 > weiphp > 使用案例 >

微信开源平台weiphp在sae中上传图片

湛宏旷
2023-12-01

因为SAE是没有写文件权限的,所以一般需要创建一个Domain来保存文件。

但是weiphp代码中是在配置文件里指定文件上传方式(Local,SAE)的,所以安装完应用之后需要手动修改配置文件。
weiphp论坛上有很多解决方案,最常用的一种是:

注释掉: // 'PICTURE_UPLOAD_DRIVER'=>'local',
加入:
'PICTURE_UPLOAD_DRIVER'=>'Sae', //SAE上传文件驱动配置 
'UPLOAD_SAE_CONFIG'=>array( 'rootPath'=>'http://' . $_SERVER['HTTP_APPNAME'] . '-uploads.stor.sinaapp.com/Editor/', 'domain'=>'uploads', )

但是发现修改后依然无法上传成功,从错误信息看还是使用的Local方式,后来在Upload类中发现有如下处理:

$driver = (defined('SAE_TMP_PATH') || !$driver) ? C('FILE_UPLOAD_TYPE') : $driver;

这个地方不知道为什么加了对SAE_TMP_PATH的判断,所以driver的值被设置成FILE_UPLOAD_TYPE了,
然后就简单了,在 ThinkPHP\Conf\convention_sae.php 文件中增加下面一行定义即可:

'FILE_UPLOAD_TYPE'      =>  'Sae',    // 文件上传方式


 类似资料: