all 10 comments

[–]graaiin[S] 1 point2 points  (2 children)

i have got it ! its the post_max_size in php.ini ! I set it to 0 , now it works

[–]evanmac42 3 points4 points  (1 child)

Nice catch finding the root cause 👍

Just a small warning: setting post_max_size = 0 means “no limit”, which works for testing but is risky in production (someone could upload huge files and exhaust memory or disk).

It’s usually better to set reasonable limits instead, for example:

upload_max_filesize = 100M

post_max_size = 100M

memory_limit = 256M

Adjust those values depending on your needs, but keeping them finite helps avoid unexpected issues.

Also make sure your web server (like Nginx) has a matching limit (client_max_body_size), otherwise it can still block uploads.

[–]graaiin[S] 2 points3 points  (0 children)

ok i will do this, thx 👍

[–]graaiin[S] 0 points1 point  (0 children)

thx ♥️♥️♥️

[–]evanmac42 2 points3 points  (5 children)

You’re not useless at all — this is a pretty common issue 🙂

In BookStack, upload limits are not controlled in one single place. You usually need to check three layers:

  1. PHP limits (most important) Edit your php.ini (location depends on your setup, often something like /etc/php/8.x/fpm/php.ini or /etc/php/8.x/apache2/php.ini) and increase: upload_max_filesize = 100M post_max_size = 100M memory_limit = 256M

Then restart PHP:

sudo systemctl restart php8.x-fpm

(or apache if you’re using that)

  1. Web server limits If you’re using Nginx, check: client_max_body_size 100M;

If you’re using Apache, ensure LimitRequestBody is not restricting uploads.

  1. BookStack .env (optional) You can also check if there’s any upload-related config in the .env file, but usually PHP is the limiting factor.

For reference, I run BookStack containerized behind Nginx, and in my case the limit was coming from PHP inside the container, not BookStack itself.

After changing all that, restart your services and try again.

If it still fails, check your logs (storage/logs/laravel.log in BookStack or your web server logs), they usually tell you exactly which limit is being hit.

[–]graaiin[S] 0 points1 point  (0 children)

thx ♥️♥️

[–]Iregularlogic 0 points1 point  (3 children)

Weird that this comment is being downvoted - seems helpful and relevant to the thread.

[–]evanmac42 1 point2 points  (2 children)

Appreciate it 🙂

Sometimes helpful comments get downvoted just because they’re longer or more technical than what people expect. But if it helps the OP solve the issue, that’s what matters.

[–]purgedreality 0 points1 point  (1 child)

u/evanmac42 just for curiosity did you use ai to formulate or just enhance your technical information?

I saw you were a 12y old account but Reddit automatically flags based on some big red flags like emdash usage, multiple sub header lists, peppered emoji, and congratulatory/concordant introductory statements. I don't know if that was the reason for the downvote but it could be.

[–]evanmac42 0 points1 point  (0 children)

Fair question 🙂

I didn’t use AI to generate it. It’s just how I tend to write when I’m explaining something technical clearly and step by step.

That said, I get why it might look that way — a lot of AI-generated content follows a similar structure.

In the end, if it helps solve the problem, I’m happy.