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

خطای ساخت پوشه uploads وردپرس؛ چرا عکس در رسانه بارگذاری نمی‌شود؟

آموزش مرحله‌ای رفع خطای ساخت پوشه uploads وردپرس با بررسی فضای هاست، مسیر ذخیره، مالکیت و مجوز مناسب.

انتشار:
توسط تیم فنی نت‌آرام
۸ دقیقه زمان مطالعه
۰ دیدگاه
محتوای تخصصی، ساده و کاربردی
هماهنگ با هویت حرفه‌ای نت‌آرام
بازگشت به لیست مقالات
تصویر شاخص مقاله خطای ساخت پوشه uploads وردپرس؛ چرا عکس در رسانه بارگذاری نمی‌شود؟ در وبلاگ نت‌آرام
محتوای آموزشی وبلاگ نت‌آرام
می‌خواهید عکسی به کتابخانه رسانه وردپرس اضافه کنید، اما پیامی شبیه Unable to create directory یا «پوشه مادر قابل نوشتن نیست» می‌بینید. وردپرس نتوانسته پوشه موردنیاز برای ذخیره فایل را بسازد. علت ممکن است فضای پر، سهمیه تمام‌شده، مسیر قدیمی پس از انتقال سایت، مجوز نامناسب یا مالکیت اشتباه باشد.
لازم نیست همه پوشه‌های سایت را با یک دستور به حالت قابل نوشتن برای همه تغییر دهید. در این راهنما ابتدا مسیر و علت را پیدا می‌کنیم و بعد فقط تنظیم مرتبط را اصلاح می‌کنیم. پیش از تغییر فایل‌ها یا مجوزها نسخه پشتیبان سالم و قابل بازیابی داشته باشید.

اول مطمئن شوید با همین خطا روبه‌رو هستید

متن کامل پیام، مسیر نوشته‌شده در آن و زمان بروز خطا را یادداشت کنید. اگر وردپرس فقط می‌گوید اندازه فایل از حد مجاز بیشتر است، راه‌حل این صفحه الزاماً مشکل را حل نمی‌کند؛ اندازه و مسیر بارگذاری در آن خطا متفاوت است. اگر فایل آپلود می‌شود ولی اندازه‌های کوچک تصویر ساخته نمی‌شوند، مشکل پردازش تصویر را جداگانه بررسی کنید.
برای آزمایش از یک تصویر کوچک و سالم که اطلاعات محرمانه ندارد استفاده کنید. همان فایل را چند ده بار بارگذاری نکنید؛ هر تلاش ممکن است فایل یا یک رکورد نیمه‌کاره بسازد. اگر فقط یک فایل خطا می‌دهد و فایل کوچک دیگر بدون مشکل بارگذاری می‌شود، نوع، نام و سلامت همان فایل را هم بررسی کنید.
وردپرس در نصب معمولی از پوشه uploads زیر wp-content استفاده می‌کند و در صورت فعال بودن دسته‌بندی تاریخ، ممکن است پوشه سال و ماه بسازد. در سایت چندگانه یا سایت دارای مسیر سفارشی، محل دقیق می‌تواند متفاوت باشد. توضیح فنی مسیر آپلود در مستندات وردپرس این تفاوت‌ها را نشان می‌دهد.

قدم اول: فضای خود حساب هاست را ببینید

در سی‌پنل، صفحه اصلی و بخش Disk Usage را باز کنید و مصرف حساب و فضای در دسترس را ببینید. اگر میزبان سهمیه تعداد فایل یا inode را نیز نمایش می‌دهد، آن را جداگانه بررسی کنید. داشتن فضای آزاد روی کل سرور به معنی آزاد بودن سهمیه این حساب نیست.
اگر سهمیه پر است، ابتدا با مالک سایت فایل‌های قابل حذف را مشخص کنید. نسخه پشتیبان، تصاویر مشتریان، صندوق ایمیل و فایل‌های پایگاه داده را صرفاً برای خالی شدن فضا پاک نکنید. می‌توانید خروجی‌های موقت یا نسخه‌های قدیمی را پس از تأیید مالک و اطمینان از داشتن پشتیبان لازم، از مسیر مدیریتی مربوط پاک یا جابه‌جا کنید. اگر همه داده‌ها لازم‌اند، افزایش سهمیه یا انتقال بخشی از داده با پشتیبانی مطرح شود.
پس از آزاد شدن فضا، دوباره سهمیه و تعداد فایل را ببینید و همان تصویر کوچک را یک بار آزمایش کنید. اگر خطا رفع نشد، مسیر و مجوز را ادامه دهید؛ پر بودن سهمیه تنها علت ممکن نیست.

قدم دوم: مسیر وردپرس و پوشه مقصد را پیدا کنید

در cPanel به Domains بروید و مسیر ریشه سایت موردنظر را از اطلاعات دامنه پیدا کنید. سپس File Manager را باز کنید و به همان ریشه بروید. وجود فایل‌هایی مانند wp-config.php و پوشه wp-content به شناسایی نصب وردپرس کمک می‌کند. مسیر هر سایت الزاماً public_html نیست؛ به‌خصوص اگر چند دامنه یا سایت آزمایشی دارید، قبل از تغییر مطمئن شوید نصب درست را باز کرده‌اید.
در نصب عادی، داخل wp-content پوشه uploads را پیدا کنید. اگر پیام خطا مثلاً به مسیر سال و ماه داخل آن اشاره می‌کند، بررسی کنید پوشه والد وجود دارد و در جای مورد انتظار است. اگر چندسایته است، ممکن است مسیر هر سایت داخل پوشه sites و شناسه آن قرار گیرد؛ ساخت پوشه روی یک سایت دیگر مشکل را حل نمی‌کند.
اگر uploads در نصب عادی وجود ندارد، پیش از ساختن آن مطمئن شوید مسیر سفارشی یا ذخیره‌سازی بیرونی استفاده نمی‌شود. بعد می‌توانید در File Manager داخل wp-content یک پوشه با نام دقیق uploads بسازید و نتیجه را آزمایش کنید. اگر ساخت پوشه توسط پنل هم با خطا روبه‌رو شد، متن خطا را ثبت کنید و مرحله سهمیه و مالکیت را با میزبان دنبال کنید. پوشه‌های قدیمی را حذف نکنید؛ ممکن است تصاویر قبلی داخل آن‌ها باشند.

قدم سوم: اگر سایت تازه منتقل شده، مسیر قدیمی را پیدا کنید

در خطای نمایش‌داده‌شده دنبال نام حساب یا مسیر سرور قبلی بگردید. مثلاً اگر مقصد به پوشه‌ای اشاره می‌کند که در هاست جدید وجود ندارد، احتمال مسیر سفارشی قدیمی مطرح است. اما همیشه مسیر کامل در پیام دیده نمی‌شود و مسیر متفاوت الزاماً اشتباه نیست.
اگر با ساختار وردپرس آشنا هستید، یک نسخه پشتیبان از تنظیمات بگیرید و وجود تنظیم سفارشی UPLOADS در wp-config.php یا تنظیمات انتقال و ذخیره‌سازی رسانه را بررسی کنید. در برخی نصب‌های قدیمی ممکن است تنظیم upload_path نیز استفاده شود. این مقدارها می‌توانند عمداً برای CDN، فضای جداگانه یا شبکه چندسایته تعیین شده باشند؛ آن‌ها را صرفاً چون شبیه مسیر پیش‌فرض نیستند حذف نکنید. اگر نمی‌دانید چرا تنظیم شده‌اند، نام مسیر و زمان انتقال را به مدیر سایت بدهید تا مقصد درست را تأیید کند.
اگر مسیر قدیمی بودنش تأیید شد، مقدار را طبق طرح ذخیره‌سازی سایت و راهنمای توسعه‌دهنده به مقصد درست اصلاح کنید. سپس یک فایل جدید آزمایشی بارگذاری کنید و تصویرهای قدیمی را هم باز کنید. تغییر مسیر آپلود فایل‌های قبلی را خودکار به محل جدید منتقل نمی‌کند؛ تا مطمئن نشده‌اید آن‌ها را حذف یا جابه‌جا نکنید.

قدم چهارم: مجوز و مالکیت را محدود و دقیق بررسی کنید

در File Manager روی پوشه uploads یا پوشه والد واقعی راست‌کلیک کنید و گزینه Permissions / Change Permissions را باز کنید. مقدار فعلی را پیش از تغییر یادداشت کنید. عددهایی مثل 755 برای بسیاری از پوشه‌ها رایج‌اند، اما مقدار مناسب به مالک فایل و روش اجرای PHP روی همان هاست بستگی دارد. دیدن عدد 755 به‌تنهایی ثابت نمی‌کند کاربری که PHP با آن اجرا می‌شود می‌تواند در آن بنویسد.
اگر پوشه متعلق به حساب دیگری است یا پس از انتقال با مالک اشتباه ساخته شده، از پشتیبانی هاست بخواهید مالکیت مسیر مشخص و کاربر اجرای PHP را تطبیق دهد. در سرور مدیریت‌شده، تغییر مالکیت سراسری سایت بدون شناخت حساب‌ها و سرویس‌ها می‌تواند دسترسی را خراب کند. اگر پنل به شما نشان می‌دهد مجوز پوشه به اشتباه تغییر کرده و میزبان مقدار درست همین مسیر را تأیید کرده، همان پوشه را اصلاح و دوباره آزمایش کنید.
مجوز 777 یا فعال کردن نوشتن برای همه را راه‌حل دائمی قرار ندهید. همچنین کل پوشه‌های سایت را به شکل بازگشتی تغییر ندهید؛ پوشه‌های خصوصی، فایل تنظیمات و رسانه ممکن است نیازهای متفاوتی داشته باشند. اگر اصلاح یک مجوز شناخته‌شده اثر نداشت، تنظیم قبلی را در صورت امن بودن برگردانید و خروجی را به پشتیبانی بدهید.

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

چند احتمال دیگر را جداگانه دنبال کنید:
  1. فایل‌سیستم فقط خواندنی است: اگر برنامه‌های دیگر نیز نمی‌توانند فایل بسازند یا گزارش سرور Read-only file system دارد، تغییر مجوز راه‌حل نیست. مدیر سرور باید علت ذخیره‌سازی را بررسی کند؛ راهنمای خطای فایل‌سیستم فقط‌خواندنی مراحل ایمن را توضیح می‌دهد.
  2. محدودیت امنیتی یا PHP: زمان دقیق و مسیر را با گزارش PHP و وب‌سرور تطبیق دهید. اگر قانون مشخصی درخواست سالم را رد کرده، مدیر سرویس همان قانون را محدود اصلاح می‌کند؛ خاموش کردن همه حفاظت‌ها روش تشخیص دائمی نیست.
  3. افزونه تغییر رسانه یا فضای ابری: تنظیمات آن را روی نسخه آزمایشی بررسی کنید. اگر فایل باید به فضای بیرونی برود، وضعیت اتصال و مجوز همان سرویس هم مهم است. غیرفعال‌سازی سراسری افزونه روی سایت فعال می‌تواند نمایش تصاویر قبلی را تغییر دهد.
  4. مسیر موقت آپلود: بعضی خطاها پیش از رسیدن فایل به uploads اتفاق می‌افتند. متن کامل خطا و گزارش PHP به میزبان کمک می‌کند پوشه موقت و محدودیت آن را هم بررسی کند.

نتیجه را از ابتدا تا انتها امتحان کنید

یک تصویر کوچک آزمایشی را از رسانه ← افزودن پرونده رسانه‌ای بارگذاری کنید. پیام موفقیت را ببینید، تصویر را در کتابخانه باز کنید و نشانی آن را در پنجره مهمان آزمایش کنید. اگر سایت چند نویسنده دارد، با حسابی که مجوز قانونی بارگذاری دارد نیز یک آزمایش انجام دهید. در پایان تصویر آزمایشی را از کتابخانه و مطابق روش وردپرس حذف کنید.
اگر بارگذاری موفق است اما تصویر در صفحه عمومی دیده نمی‌شود، آن بخش از مسیر نمایش، کش یا دسترسی به فایل نیازمند بررسی جداست. برای آشنایی با امکانات میزبانی سایت، صفحه هاست وردپرس نت‌آرام را ببینید؛ تنظیم مجوز و مالکیت به شیوه اجرای سرویس شما بستگی دارد.
اشتراک‌گذاری:
لینکدینتلگرامایکس
مقاله قبلی
مقاله قبلی وجود ندارد.

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

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