Laravel 存储磁盘放置在实时服务器上出现内部服务器错误 500 | 没有创建日志

罗马

我正在将图像文件保存到磁盘。之后,我创建一个 ZIP 并下载它。在本地主机上一切正常。

在实时服务器上,我得到:

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator at [email protected] to inform them of the time this error occurred, and the actions you performed just before this error.

More information about this error may be available in the server error log.

如果我想将图像保存到存储中,则会发生错误:

$user = DB::connection('mysql_live')->table('users')->where('id', $userid)->first();
Storage::disk('gdpr')->put($user->picture, file_get_contents(env('AVATAR_PHOTO_SRC') . $user->picture));

env('AVATAR_PHOTO_SRC') 是图像的绝对路径,例如: https://example.com/uploads/thumb/


没有创建日志文件。而且压缩包的大小不到 1MB,图像更小。

这里发生了什么?

编辑

$user->picture是文件名。例如:example.jpg

该文件确实存在并且可以在例如浏览器中打开。记住在本地主机上一切正常。

编辑

我找到了一个登录try,catch:

file_get_contents(): https:// wrapper is disabled in the server configuration by allow_url_fopen=0

编辑

PHP ini 不能在共享服务器上修改。我需要另一种方式来存储图像。

罗马

这是 curl 解决方案,对我有用:

$c = curl_init();
curl_setopt($c, CURLOPT_URL, env('AVATAR_PHOTO_SRC') . $user->picture);
curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
curl_setopt($c, CURLOPT_HEADER, 0);

curl_setopt($c, CURLOPT_SSL_VERIFYPEER, true); 
curl_setopt($c, CURLOPT_CAINFO, Storage::disk('other')->path("cacert-2020-01-01.pem")); 
$img = curl_exec($c);

$httpCode_post = curl_getinfo($c, CURLINFO_HTTP_CODE);
$cerror_post = curl_error($c);

curl_close($c); 

Storage::disk('gdpr')->put($user->picture, $img);

您可以设置CURLOPT_SSL_VERIFYPEER为 false 则不需要证书的步骤。

但我建议你添加证书。它超级容易。只需在此处下载并将其保存在您的存储中的某个位置。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Laravel 500内部服务器错误?

Laravel和Docker出现500(内部服务器错误)

Laravel 500错误没有日志

在Laravel 5+ Ubuntu 14.04上出现500个内部服务器错误

使用 Ajax 进行实时搜索并在 Laravel 5.8 上获取错误“500(内部服务器错误)”

错误500(内部服务器错误)ajax和laravel

Laravel 5.2错误500(内部服务器错误)

错误 Ajax 和 Laravel 500(内部服务器错误)

Laravel,部署到 LIFE 服务器后出现未知错误,500 内部服务器错误

500(内部服务器错误)Laravel 删除方法

500 Ajax调用中的内部服务器错误(Laravel)

Laravel 500 内部服务器错误 Ajax

Laravel 5:Ajax发布500(内部服务器错误)

Laravel AJAX之类的按钮500(内部服务器错误)

500(内部服务器错误)ajax和laravel

Laravel Project,500内部服务器错误

Laravel 5 Ajax内部服务器错误500

500内部服务器错误Laravel 4

Laravel Ajax捕获500内部服务器错误

POST 500(内部服务器错误)-Laravel和Ajax

Dropzone.js-Laravel | 500内部服务器错误

500(内部服务器错误)-用户注册系统-Laravel

内部服务器错误 500 Laravel 5.4 AJAX

在 Laravel 中收到错误 500 内部服务器

Laravel 雄辩更新,500 内部服务器错误

laravel ajax呼叫发布/输入给出500/404内部服务器错误,但在本地服务器上有效

500内部服务器错误AJAX POST请求laravel服务器

Laravel在CentOS 7上返回服务器错误500

在Laravel中使用Ajax时出现500内部服务器错误