فارس وب | طراحی سایت، توسعه و دیجیتال مارکتینگ
۰۹۳۳۶۶۶۳۳۵۴

3 روش برای رفع خطای Upload: Failed to write file to disk در وردپرس


یکی از ارورهایی که ممکن است هنگام بارگذاری فایل های جدید در وردپرس خود با آن رو به رو شوید، خطای Upload: Failed to write file to disk است که به آن خطای نوشتن پرونده روی دیسک نیز می گویند. این خطا یکی از آزاردهنده ترین خطاهای وردپرس محسوب می شود؛ چرا که تا زمانی که آن را برطرف نکنیم، نمی توانیم فایل جدیدی را در سایت بارگذاری کنیم. اما بر خلاف اختلال بزرگی که این ارور برای سایت ایجاد می کند، روش های بسیار راحتی برای برطرف کردن آن وجود دارد. اگر شما همراهان گرامی ژاکت نیز با این خطا در وردپرس خود رو به رو شده اید، این آموزش را دنبال کنید. در ادامه ابتدا اشاره می کنیم که این ارور دقیقاً چیست و چرا رخ می دهد. سپس 3 روش را برای رفع خطای Upload: Failed to write file to disk به طور کامل بررسی می کنیم.

همه خطاهای رایج وردپرسی را در این مقاله بخوانید.

خطای  Upload: Failed to write file to diskچیست؟

هر چند که این خطا نیز مانند بسیاری ارورها ممکن است دلایل مختلفی داشته باشد، اما معمولاً دلیل رخداد آن وجود مشکلاتی در مجوزهای فایل سایت است. به طور کلی فایل هایی که در سایت وردپرسی آپلود می شوند، در پوشه “Uploads” قرار می گیرند. از طرفی این یک قاعده کلی در وردپرس است که فقط بعضی از کاربران می توانند فایل های خود را تغییر دهند (از جمله فایل Uploads که میزبان فایل های آپلود شده در سایت است). این قاعده در واقع یک معیار امنیتی از سمت وردپرس به شمار می رود تا همه کاربران نتوانند در فایل های سایت دخل و تصرف کنند.

حالا نکته اینجاست که اگر مجوزهای پوشه فایل های آپلود شده به گونه ای باشد که کاربران نتوانند هیچ گونه تغییری روی آن اعمال کنند، طبیعتاٌ وردپرس از آپلود فایل توسط این کاربران جلوگیری خواهد کرد و خطای  Upload: Failed to write file to disk را به آنها نمایش خواهد داد.

برای رفع مشکل سطح دسترسی فایل ها و پوشه ها در وردپرس، این مقاله را بخوانید.

بنابراین اگر این خطا برای سایتتان رخ دهد، در آپلود هر نوع فایلی مشکل خواهید داشت و یکی از پیام های زیر را به عنوان متن ارور مشاهده خواهید کرد:

  • WordPress failed to write to disk
  • WordPress has failed to upload due to an error failed to write file to disk
  • Unable to create directory wp-content/uploads/2016/03. Is its parent directory writable by the server?

چرا خطای Upload: Failed to write file to disk را می بینیم؟

علاوه بر مشکل در مجوزها که بالاتر به آن اشاره کردیم، دلایل دیگری نیز برای بروز این خطا وجود دارند. برای مثال ساز و کار کلی وردپرس به این شکل است که وقتی یک فایل جدید را به عنوان رسانه آپلود می کنیم، آن فایل قبل از انتقال به دایرکتوری Uploads، در یک پوشه موقتی ذخیره می شود. حالا اگر آن پوشه موقتی پر شده باشد یا در دسترس نباشد، ممکن است باعث خطای Upload: Failed to write file to disk شود.

علاوه بر این، اگر از تمام فضای حافظه سرور خود (که توسط برنامه هاستینگ انتخابی در اختیارتان قرار داده شده) استفاده کرده باشید، باز هم ممکن است خطا رخ دهد. در واقع در این حالت، این سرور است که به شما می گوید دیگر جایی برای فایل های جدید ندارد!

خطای اپلود فایل

از کجا بدانیم که در آپلود فایل ها محدودیت داریم؟

اما حالا شاید بپرسید که از کجا باید بدانیم که ما جزو کدام دسته از کاربران هستیم و آیا محدودیتی در ایجاد تغییراتی در فایل Uploads داریم یا نه؟ برای آگاهی از این امر می توانید از ابزار ” Site Health” استفاده کنید. به این ترتیب که وارد داشبورد خود در این صفحه شده و بخش “Tools” را انتخاب کنید. سپس روی تب “Info” کلیک کنید. آخرین منوی کشویی که در این صفحه می بینید، به شما نشان می دهد که آیا مجوز فایل های مهم (مثل Uploads) را دارید یا نه.

مجوزهای فایل: غیرقابل رایت

اگر عبارت ” Writable” برای دایرکتوری مد نظر نوشته شده باشد، یعنی امکان تغییر فایل های آن را دارید. اما اگر عبارت “Not Writable” درج شده باشد، یعنی دسترسی شما به این دایرکتوری محدود شده و با مشکل مجوز رو به رو هستید.

رفع خطای Upload: Failed to write file to disk

حالا می رسیم به اصل مطلب؛ یعنی چگونگی رفع خطای Upload: Failed to write file to disk در وردپرس. در ادامه 3 روش برای مقابله با این ارور را با هم بررسی می کنیم.

1) مجوزهای دایرکتوری Uploads را تغییر دهید

همانطور که بالاتر نیز گفتیم، رایج ترین دلیل بروز این خطا، مشکل در مجوزهای لازم است. بنابراین طبیعتاً اولین راه برای رفع آن نیز اصلاح مجوزهاست. برای تغییر مجوزهای دسترسی فایل ها نیز می توانید از طریق  FTP یا از طریق cPanel سایت اقدام کنید. در ادامه هر دوی این روش ها را مرور می کنیم.

تغییر مجوز فایل در FTP

برای به کارگیری این روش به یک سرویس گیرنده FTP و همینطور اعتبار FTP نیاز دارید که می توانید آن را در داشبورد حسی هاستینگ خود پیدا کنید. سپس در قدم بعدی اطلاعات خود را در سرویس گیرنده FTP وارد کرده و اتصال خود را به سرور فعال کنید. سپس از مسیر public_html> wp- content پوشه Uploads را پیدا کنید.

پوشه اپلود در wp content وردپرس

بعد روی این پوشه راست کلیک کرده و گزینه “File Permissions” را انتخاب کنید.

مجوزها در پوشه اپلودها وردپرس

با این کار یک پنجره کوچک باز می شود که شامل تنظیمات مجوز فایل های سایت است و این تنظیمات نیز به صورت عدد است. به این ترتیب که برای ارائه مجوز برای فایل Uploads، باید عدد 755 را برای این فایل انتخاب کنید:

کد عددی برای مجوز فایل وردپرس

در گام بعدی نیز کافیست روی OK کلیک کرده تا تنظیمات ذخیره شوند.

تغییر مجوز فایل در CPanel

برای تغییر مجوز فایل مربوطه از طریق این روش نیز ابتدا وارد cPanel شوید. سپس File Manager را انتخاب کنید. بعد هم روی نام فایلی کلیک کنید که می خواهید مجوزهای دسترسی آن را اصلاح کنید. سپس گزینه ” change permissions” را که بالا و سمت چپ صفحه است برای آن انتخاب کنید.

شما می توانید برای راحتتر شدن کار، افزونه مدیریت فایل وردپرس را نصب کنید.

تغییر مجوز فایل عکسها وردپرس

حالا مجوزهای لازم را با وارد کردن اعداد به شکل زیر، تغییر دهید. سپس دوباره روی ” Change permissions” کلیک کنید.

تغییر انواع مجوزها در وردپرس

گزینه تغییر مجوز فایل وردپرس

در نهایت نیز از هر یک از روش های بالا که برای تغییر مجوز فایل Uploads استفاده کرده اید، در قدم بعدی به سایت خود برگردید تا مشکل را چک کنید. حالا اگر دوباره با ابزار Site Health مجوزهای خود را بررسی کنید، خواهید دید که مجوز پوشه Uploads سایت برای شما تغییر پیدا کرده و حالا تبدیل به ” Writable” شده است.

گزینه قابل رایت برای اپلود دایرکتوری وردپرس

با این حساب احتمالاً حالا دیگر می توانید فایل های جدید را به راحتی آپلود کنید.

2) پوشه موقتی وردپرس را خالی کنید

هر چند که روش بالا در اکثر موارد مشکل را برطرف خواهد کرد و نیازی به روش دیگری برای رفع خطای Upload: Failed to write file to disk نخواهید داشت، اما در هر صورت ممکن است در مواردی مشکل از مجورهای فایل ها نباشد. در این صورت باید به سراغ خالی کردن آن فایل موقتی که بالاتر در مورد آن صحبت کردیم (WordPress Temporary Folder) بروید.

متأسفانه نمی توانید از طریق FTP به این دایرکتوری دسترسی داشته باشید. در عوض می توانید با شرکت هاستینگ خود تماس بگیرید تا برای پیدا کردن این فایل به شما کمک کنند. تیم های پشتیبانی می توانند به این فایل دسترسی داشته باشند؛ علاوه بر این می توانند بررسی کنند که آیا این فایل پر شده است یا نه. بنابراین با برقراری ارتباط با تیم پشتیبانی هاستینگ سایت خود، آنها این روش را برای شما انجام داده و ارزیابی می کنند که آیا دلیل خطای  Upload: Failed to write file to disk به پر شدن این فایل برمی گردد یا نه.

3) برنامه هاستینگ سایت را ارتقا دهید

اگر دو روش بالا را امتحان کرده اید و هنوز این ارور را دارید، می توانید به ارتقای فضای حافظه هاست خود فکر کنید. چرا که همان گونه که بالاتر اشاره کردیم، ممکن است ریشه خطای نوشتن پرونده روی دیسک، در این باشد که از همه حافظه هاست خود استفاده کرده اید. به ویژه اگر سرویسی که برای هاستینگ سایت خود استفاده کرده اید، یک سرویس مشترک است و همینطور اگر افزونه ها، پست ها و برگه های زیادی در سایت خود ایجاد کرده اید، به احتمال زیاد چاره کار در همین روش است.

پس برنامه های ارائه شده توسط شرکت هاستینگ مد نظر خود را بررسی کنید و به سراغ برنامه ای بروید که فضای بیشتری از سرور را در اختیارتان قرار می دهد. لازم است اشاره کنیم که بعد از تغییر سرویس هاستینگ، می توانید تمام اطلاعات سایت خود را بدون مشکل به سرویس جدید منتقل کنید.

خطای نوشتن پرونده روی دیسک وردپرس

جمع بندی

ارور Upload: Failed to write file to disk یکی از شایع ترین خطاهای وب سایت های وردپرسی است که می تواند روند پیشرفت کار را متوقف کرده و سایت را از برنامه خود عقب بیاندازد. چرا که با رخداد این خطا، هیچ فایل جدیدی را نمی توان به سایت اضافه کرد.

اما خوشبختانه روش های ساده ای برای مقابله با این ارور وجود دارند که 3 مورد از راحت ترین و کارآمدترین آنها را در این راهنما با هم بررسی کردیم. پس برای رفع خطای Upload: Failed to write file to disk کافیست این 3 روش را به ترتیب روی سایت خود پیاده کنید:

  1. تعییر مجوز فایل Uploads
  2. خالی کردن پوشه موقتی وردپرس
  3. ارتقای برنامه هاستینگ برای دسترسی به فضای بیشتر

امیدواریم این آموزش برایتان مفید واقع شده باشد. چنانچه سؤالی پیرامون مباحث مطرح شده دارید، می توانید در قسمت نظرات با ما در تماس باشید.

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد.

طراحی سایت
preloader