微信小程序在开发者工具中上传图片成功,而在真机预览中上传图片失败的坑

1.前台原因。

前台原因就是发生在小程序中,最好的办法就是真机调试(手机预览和开发者工具中的运行效果总会发神经,并不是最可靠的)。在真机调试中打印出上传的文件或者图片在前台读取后的临时地址路径,观看路径有无问题。

2.后台原因。

我的后台是用php框架laravel开发的,在我真机调试过程中,经仔细测试筛查,发现前台没有一点问题,而后台则报出错误

The file "" deos not exits or not readable

导致该问题最可能有两个原因:

1.文件在后台存储位置的访问权限不够,此时需要更改文件存储主文件夹的访问权限
sudo chmod -R 777 folder
2.php配置文件中规定的文件上传与post请求上传文件大小有限制
if(!$file->isValid()){ throw new \Exception('Error on upload file: '.$file->getErrorMessage());}
//可使用此方法来检验文件上传的具体错误

如果真的是php中文件上传大小配置有限制的话,则需要更改php配置文件php.ini
mac中php配置文件的位置为:

/usr/local/etc/php/php.ini

修改如下内容:

upload_max_filesize = 50M
post_max_size = 50M

若使用的服务器是nginx,则还需要在nginx配置文件中添加以下内容
mac中nginx配置文件位置为:

/usr/local/etc/nginx/nginx.conf
client_max_body_size 50m;//添加如下代码

而后重新启动nginx,php-fpm(重新启动方法)。(若是apache,则只用重新启动apache即可)

你可能感兴趣的:(小程序开发,php开发,php,小程序,javascript)