وبلاگ نت‌آرامآموزش، تجربه و راهکارهای زیرساخت

خطای 413 هنگام آپلود در وردپرس؛ سقف فایل را درست کنیم

برای خطای 413 فایل در وردپرس، سقف Nginx، PHP، وردپرس یا CDN را تشخیص دهید و فقط حد لازم را به‌شکل امن بالا ببرید.

انتشار:
توسط تیم فنی نت‌آرام
۵ دقیقه زمان مطالعه
۰ دیدگاه
محتوای تخصصی، ساده و کاربردی
هماهنگ با هویت حرفه‌ای نت‌آرام
بازگشت به لیست مقالات
تصویر شاخص مقاله خطای 413 هنگام آپلود در وردپرس؛ سقف فایل را درست کنیم در وبلاگ نت‌آرام
محتوای آموزشی وبلاگ نت‌آرام
پیام 413 Request Entity Too Large یعنی یکی از بخش‌های مسیر می‌گوید درخواست ارسالی بزرگ‌تر از حدی است که می‌پذیرد. این بخش ممکن است وب‌سرور، پراکسی، CDN یا PHP باشد. به همین دلیل، تغییر یک عدد در وردپرس همیشه جواب نمی‌دهد. راه درست این است که اول بفهمیم خطا از کدام بخش می‌آید، بعد همان سقف را کمی بالاتر از اندازهٔ فایل موردنیاز ببریم.

اول خود اندازهٔ فایل و متن خطا را ثبت کنید

اندازهٔ فایل را در رایانه ببینید؛ مثلاً 38 مگابایت. متن کامل پیام، ساعت رخداد و اینکه کدام کار را انجام می‌دادید یادداشت کنید: بارگذاری تصویر، نصب افزونه، درون‌ریزی فایل پشتیبان یا ارسال فرم. هرکدام ممکن است از مسیر متفاوتی عبور کند. یک تصویر کوچک را هم در رسانهٔ وردپرس امتحان کنید. اگر تصویر کوچک موفق است اما فایل بزرگ نه، احتمال محدودیت اندازه یا زمان بیشتر می‌شود.
اگر مرورگر کد 413 می‌دهد، این پاسخ معمولاً پیش از رسیدن درخواست به وردپرس ساخته شده است. اگر خود وردپرس می‌گوید «از حد مجاز بیشتر است»، تنظیمات PHP یا محدودیت داخل وردپرس محتمل‌تر است. یک بار در پنجرهٔ خصوصی امتحان کنید تا پیام کش‌شده را با پاسخ تازه اشتباه نگیرید؛ اما پاک‌کردن کوکی اندازهٔ مجاز را بالا نمی‌برد.

سقف PHP را در پنل هاست هماهنگ کنید

در cPanel بخش MultiPHP INI Editor یا Select PHP Version → Options را باز کنید. در DirectAdmin نام گزینه بسته به نسخه و پوسته فرق می‌کند؛ معمولاً باید از بخش مدیریت PHP همان دامنه استفاده کنید. قبل از تغییر، مقدارهای فعلی را یادداشت کنید. سه مقدار رایج این‌ها هستند:
کد / دستورupload_max_filesize = 64M post_max_size = 72M memory_limit = 256M
این فقط نمونه است، نه عدد مناسب برای همه. اگر فایل شما 38 مگابایت است، می‌توانید سقفی کمی بالاتر از نیاز تنظیم کنید؛ لازم نیست آن را نامحدود کنید. post_max_size باید از upload_max_filesize بزرگ‌تر باشد، چون کل فرم و داده‌های همراه فایل را هم شامل می‌شود. مقدار memory_limit هم باید با منابع پلن هماهنگ باشد؛ بزرگ‌کردن آن برای همهٔ درخواست‌ها ممکن است فشار حافظه را بیشتر کند. جدول رسمی تنظیمات PHP رابطهٔ این گزینه‌ها را توضیح می‌دهد.
اگر پنل تغییر را ذخیره نمی‌کند یا مقدار در PHP واقعی عوض نمی‌شود، دسترسی کاربر شما برای این گزینه کافی نیست. مقدار را در چند فایل تصادفی مثل .htaccess و .user.ini تکرار نکنید؛ ممکن است وب‌سرور اصلاً آن فایل را نخواند یا تنظیم ناسازگار بسازد. از پشتیبانی بخواهید مقدار مؤثر PHP برای همان دامنه را اعلام کند.

اگر Nginx یا پراکسی خطا می‌دهد، سراغ PHP نروید

در Nginx محدودیت اندازهٔ درخواست با گزینهٔ client_max_body_size تنظیم می‌شود. تغییر آن نیاز به دسترسی مدیر سرور دارد و باید در بخش درست پیکربندی همان سایت قرار بگیرد. برای نمونه، مدیر ممکن است سقف 72 مگابایت را برای یک نشانی یا سایت تنظیم کند. سپس باید پیکربندی را آزمایش و وب‌سرور را با روش امن بارگذاری مجدد کند؛ مشتری هاست اشتراکی نباید فایل تنظیمات Nginx را از File Manager حدس‌وار بسازد.
اگر سایت پشت CDN یا پراکسی است، محدودیت آن هم می‌تواند پیش از سرور اصلی درخواست را رد کند. برای تشخیص، زمان رخداد و شناسهٔ خطایی را که صفحه نشان می‌دهد نگه دارید. به میزبان بگویید خطای 413 برای فایل با اندازهٔ مشخص از کدام لایه ثبت شده است. راهنمای رسمی Nginx برای client_max_body_size محل و رفتار این حد را توضیح می‌دهد.

سقف خود وردپرس را هم ببینید

حتی وقتی PHP فایل بزرگ‌تری می‌پذیرد، وردپرس، افزونهٔ فرم یا افزونهٔ امنیت ممکن است حد پایین‌تری داشته باشد. در رسانه → افزودن پروندهٔ تازه مقدار «حداکثر اندازهٔ پرونده برای بارگذاری» را بخوانید. اگر آن عدد از مقدار PHP کمتر است، وردپرس هنوز مسیر را محدود می‌کند. در افزونهٔ فرم نیز مقدار «حداکثر حجم فایل» برای همان فیلد را بررسی کنید؛ این مقدار ممکن است جداگانه تنظیم شود.
اگر با بارگذاری نسخهٔ پشتیبان خطا دارید، روش انتقال همان افزونه را بخوانید. فایل چندگیگابایتی را از فرم عادی وردپرس نفرستید؛ انتقال امن از File Manager، SFTP یا ابزار واردکردن مخصوص افزونه ممکن است مناسب‌تر باشد. فایل پشتیبان را عمومی نکنید و پس از انتقال، دسترسی آن را محدود کنید.

تغییر را با دو آزمون کوچک تأیید کنید

بعد از ذخیرهٔ تنظیم، یک بار صفحه را تازه کنید و فایلی کمی کوچک‌تر از سقف تعیین‌شده بفرستید. سپس اگر به همان اندازه نیاز دارید، فایل اصلی را امتحان کنید. اگر هنوز 413 می‌بینید، مقدار PHP را دوباره بالا نبرید؛ خطا احتمالاً از Nginx، CDN یا یک پراکسی دیگر است. اگر پیام «بیش از حد مجاز» ناپدید شده ولی آپلود در میانه متوقف می‌شود، مشکل می‌تواند زمان اجرا، فضای خالی یا دسترسی پوشه باشد، نه سقف اندازه.
پس از پایان، سقف‌ها را در حد نیاز نگه دارید و فایل آزمایشی را از رسانه پاک کنید. اگر تصویر واقعی همچنان آپلود نمی‌شود، زمان، اندازه و کد پاسخ را برای میزبان بفرستید. مقالهٔ پیدا کردن فضای مصرف‌شده در هاست هم کمک می‌کند کمبود فضا را از محدودیت درخواست جدا کنید.
اگر فایل کوچک و بزرگ هر دو شکست می‌خورند، اندازه تنها مظنون نیست. ممکن است پوشهٔ موقت PHP قابل نوشتن نباشد، فضای حساب پر شده باشد یا مجوز پوشهٔ uploads درست نباشد. متن خطا را نگه دارید و با یک فایل کوچک شناخته‌شده تکرار کنید. برای خطای 413، بازفرستادن فایل بزرگ در فاصلهٔ کوتاه کمکی نمی‌کند؛ تا وقتی سقف درست نشده درخواست همان‌جا رد می‌شود.
اشتراک‌گذاری:
لینکدینتلگرامایکس
مقاله قبلی
مقاله قبلی وجود ندارد.

دیدگاه‌ها (۰)

دیدگاه‌های تاییدشده و پاسخ‌های تیم نت‌آرام