بنا به درخواست کاربران در این مطلب رفع خطای unable to create directory هنگام آپلود فایل در وردپرس رو براتون آموزش خواهیم داد که با بررسی چند دسترسی و پوشه به راحتی میتونید این مشکل رو رفع کنید پس در ادامه با ما همراه باشید.
رفع خطای unable to create directory در وردپرس
معمولا کاربرانی که سایت وردپرسی دارند و هاست رو منتقل کرده باشن به این ارور برخوردن میکنن البته کاربرانی که وب سایت خود را بصورت ادان دامین در هاست بالا آوردن و بعدا نیاز به هاست اختصاصی برای وب سایت ادد شده داشته باشند هم بنا به دلیل تغییر دایرکتوری به این مشکل برخورد میکنند.
در زیر تمامی این موارد بصورت کامل توضیح داده شده است.
تغییر دایرکتوری آپلود در تنظیمات وردپرس
اگه اخیرا شما وب سایت وردپرسی خود را به میزبان جدید منتقل کرده باشید به احتمال زیاد مسیر دایرکتوری آپلود وردپرس شما اشتباه است پس برای اطمینان و رفع خطای unable to create directory در وردپرس به بررسی تنظیمات این بخش مراجعه میکنیم.
برای انجام این کار به پنل مدیریت وب سایت وردپرسی خود وارد شوید. سپس، در تب تنظیمات، رسانه (Media) را انتخاب کنید. در زیر بخش آپلود فایل، باید شما فیلدی با نام ذخیره فایلهای آپلود در این پوشه را مشاهده کنید. حالا مسیر دایرکتوری آپلود خود را بررسی نمایید. برای مثال مسیر کامل دایرکتوری آپلود در وردپرس همانند آدرس زیر میباشد که به جای user0214651 نام کاربری هاست شما خواهد بود:
/home/user0214651/public_html/wp–content/uploads
سپس با فایل منیجر هاست بررسی کنید که آیا مسیر دایرکتوری آپلود درست است و یا خیر. به راحتی به فولدر مورد نظر رفته و مسیر را بررسی کنید. در فایل منیجر هاست، مسیر در سمت چپ بالای صفحه قابل مشاهده میباشد. هنگامی که مطمئن شدید که مسیر ارائه شده درست است، بر روی دکمه Save کلیک کرده و دوباره سعی کنید فایلهای مورد نظر خود را آپلود نمایید.
اگر قادر به مشاهده مسیر دایرکتوری آپلود در ناحیه مدیرت وردپرس خود نیستید، میتوانید با ویرایش فایل confing وردپرس این کار را نیز انجام دهید. برای انجام آن ابتدا با استاده از فایل منیجر هاست و یا FTP فایل wp-confing.php را باز کنید و سپس کد زیر را به آن اضافه نمایید:
define( ‘UPLOADS’, ‘wp-content/uploads’ );
توجه داشته باشید که کد بالا را باید قبل از خط کد زیر قرار دهید:
require_once(ABSPATH . ‘wp-settings.php’);
حال مجدد سعی کنید فایلهای خود را آپلود نمایید. اگر هنوز خطا پا برجا میباشد روش دوم را امتحان کنید.
تغییر مجوز فولدر برای رفع خطای unable to create directory در وردپرس
با وجود این که مراحل گفته شده در بخش اول را کامل بررسی کردهاید و مطمئن هستید که مسیر دایرکتوری آپلود درست است. اما هنوز ارور ” Is its parent directory writable by the server? ” را مشاهده میکنید؟
برای رفع خطای unable to create directory در وردپرس بهتر است پیکربندی مجوزهای فولدر آپلود خود را بازنشانی نمایید. برای این کار میتوانید وارد هاست خود شوید و از بخش فایل منیجر میزان دسترسی رو تغییر بدید.
طبق عکس بالا permissions میزان دسترسی پوشه و فایل رو مشخص میکنه که روی عدد ستون permissions پوشه upload کلیک کنید و به 755 تغییر بدید.
توجه کنید پوشه upload در مسیر public_html/wp-contents می باشد.
در نهایت اگر هر دو روش ذکر شده کار نمیکند، میتوانید راه حل زیر را نیز امتحان کنید: مجوز فولدر آپلود را از 755 به 777 تغییر دهید.
رفع خطای Is its parent directory writable by the server با استفاده از VPS
اگر شما وردپرس خود را در VPS راه اندازی کردهاید و دسترسی SSH دارید. میتوانید راه حل زیر را نیز امتحان کنید. توجه داشته باشید که آموزش زیر برای VPS لینوکس میباشد که از سرور Apache استفاده میکند.
توجه کنید به طور پیش فرض، وب سرور Apache شما برای دسترسی به فایلها و پوشهها از www-data user و www-data group استفاده میکند. احتمال دارد که پوشه آپلود در واقع متعلق به www-data نباشد، که به طور طبیعی از مجوز نوشتن (Write) در پوشه جلوگیری میکند.
برای این کار باید از فرمان لینوکس نشان داده شده در زیر استفاده کنید.
ابتدا، به VPS خود از طریق SHH متصل شوید.به پوشه wp-content بروید
فرض میکنیم که وردپرس شما در دایرکتوری public_html نصب شده است. cd public_html/wp-contents
اکنون مالک (owner) و گروه (group) را به www-data تغییر دهید. chown -R www-data:www-data plugins
درست مانند حساب میزبانی مشترک، ممکن است مجوزهای پوشه برای وردپرس به منظور نوشتن (مجوز write) درون پوشه افزونه کافی نباشد. در حالی که در داخل پوشه wp-content هستید، دستور زیر را اجرا کنید. chmod 755 -R uploads
این فرمان مجوزها را برای افزونهها و تمام زیر شاخههای درون آن را به 755 تنظیم می کند.