Closed ImaCrea closed 4 years ago
First of all, thank you for the detailed bug report :) 👍
Could you check your pixelfed configuration (via the command line cat /var/www/pixelfed/.env
or graphically here : yourpixelfeddomain.tld/i/admin/settings/config
) to see what is the value of MAX_PHOTO_SIZE
?
If the limit is too low for your image, Pixelfed has this behavior, non-precise error message at the end of the upload (yeah I know, very bad UX, it should at least check before any upload and give your a better error message) and fails.
Hello, thank you for your reply. Yes I checked that already.
On my .env it says :
MAX_ACCOUNT_SIZE=1000000
MAX_PHOTO_SIZE=15000
I guess 15000 means 15Mb, right? Thing is, the pic I tried to upload are around 3~5Mb. So :/
Ok, so I just understood how I get to the log file of pixelfed (/var/www/pixelfed/storage/logs) and here's what I get :
[2020-09-27 15:02:54] production.ERROR: The "" file does not exist or is not readable. {"userId":1,"exception":"[object] (Symfony\\Component\\Mime\\Exception\\InvalidArgumentException(code: 0): The \"\" file does not exist or is not readable. at /var/www/pixelfed/vendor/symfony/mime/FileinfoMimeTypeGuesser.php:50)
[stacktrace]
#0 /var/www/pixelfed/vendor/symfony/mime/MimeTypes.php(134): Symfony\\Component\\Mime\\FileinfoMimeTypeGuesser->guessMimeType('')
#1 /var/www/pixelfed/vendor/symfony/http-foundation/File/File.php(73): Symfony\\Component\\Mime\\MimeTypes->guessMimeType('')
#2 /var/www/pixelfed/app/Http/Controllers/Api/BaseApiController.php(244): Symfony\\Component\\HttpFoundation\\File\\File->getMimeType()
#3 [internal function]: App\\Http\\Controllers\\Api\\BaseApiController->uploadMedia(Object(Illuminate\\Http\\Request))
#4 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): call_user_func_array(Array, Array)
#5 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(45): Illuminate\\Routing\\Controller->callAction('uploadMedia', Array)
#6 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Routing/Route.php(219): Illuminate\\Routing\\ControllerDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(App\\Http\\Controllers\\ApiController), 'uploadMedia')
#7 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Routing/Route.php(176): Illuminate\\Routing\\Route->runController()
#8 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Routing/Router.php(681): Illuminate\\Routing\\Route->run()
#9 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(130): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#10 /var/www/pixelfed/app/Http/Middleware/Localization.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#11 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): App\\Http\\Middleware\\Localization->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#12 /var/www/pixelfed/app/Http/Middleware/TwoFactorAuth.php(33): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#13 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): App\\Http\\Middleware\\TwoFactorAuth->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#14 /var/www/pixelfed/app/Http/Middleware/EmailVerificationCheck.php(33): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#15 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): App\\Http\\Middleware\\EmailVerificationCheck->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#16 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(41): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#17 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#18 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(76): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#19 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#20 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(49): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#21 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#22 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(56): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#23 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#24 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(37): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#25 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#26 /var/www/pixelfed/app/Http/Middleware/FrameGuard.php(18): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#27 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): App\\Http\\Middleware\\FrameGuard->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#28 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(66): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#29 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#30 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(105): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#31 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Routing/Router.php(683): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#32 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Routing/Router.php(658): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#33 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Routing/Router.php(624): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#34 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Routing/Router.php(613): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#35 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(177): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#36 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(130): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#37 /var/www/pixelfed/vendor/fideloper/proxy/src/TrustProxies.php(57): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#38 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Fideloper\\Proxy\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#39 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#40 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#41 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#42 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#43 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#44 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#45 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php(62): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#46 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Foundation\\Http\\Middleware\\CheckForMaintenanceMode->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#47 /var/www/pixelfed/vendor/barryvdh/laravel-cors/src/HandlePreflight.php(29): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#48 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Barryvdh\\Cors\\HandlePreflight->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#49 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(105): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#50 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(152): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#51 /var/www/pixelfed/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(117): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#52 /var/www/pixelfed/public/index.php(53): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#53 {main}
"}
I don't have any idea how to interpret that. Got any idea maybe?
I have no idea… I wonder if we should ask (via a bug report ?) Pixelfed team ?
I see. No worries, I can take care of it when I have a moment.
ah one second @lapineige I might have found a fix. I spoke on Pixelfed's IRC.
Here's what they told me:
look at https://docs.pixelfed.org/install-guides/arch.html#preparing-a-machine: Edit `/etc/php/php.ini`: Edit the following lines to your desired upload limits: `post_max_size = 8M` ; `upload_max_filesize = 2M` ; `max_file_uploads = 20`
So in our case the file is /etc/php/7.2/fpm/php/ini
so I edited the limits to 20M for post_max_size and upload_max_filesize and... now it's working ! happy yay!
But I have to say this wasn't easy at all. Maybe that need an update to the package to make sure at least php.ini is set with a 15M limit to have it coherent with pixelfed's conf? And a quick explanation in the readme for whoever wants to change that limits?
Oh yeah, I forgot this one, indeed it could have been php limit and not Pixelfed one…
Strangely your use php 7.2, but it should be 7.3 for pixelfed 🤔
Maybe that need an update to the package to make sure at least php.ini is set with a 15M limit to have it coherent with pixelfed's conf? And a quick explanation in the readme for whoever wants to change that limits?
Very good point, we should explain that in the readme, and maybe set a different php limit (at least to fit Pixelfed standard one). But are complementary, as setting a good php default value won't resolve the issue if people try to change that value...
btw I see 7.3 for php now so don't worry on that side ;)
Hi dear YH contributors, I am super pleased to be able to play with Pixelfed thanks to you!
I am not sure this issue should be here or on Pixelfed's so in doubt I start here. Hope you don't mind ^^
Describe the bug
When I try to upload a pic, it looks like it's uploading, it goes to 100% and then I get an error message.
In browser console all I get is a 500 error, no more hint.
Same error on Chromium, Safari, Firefox (Mac 10.14.15)
Same error when trying on Firefox mobile (e OS Android)
Note that somehow one pic upload on desktop managed to be published properly but 5 others I tested won't go through.
I also edited .env conf file in order to switch debug_app by true but I can't see more info in browser console as a result. Maybe it affects log on server's side but I couldn't find how to have a look Pixelfed log. :(
Versions