یکی از مشکلاتی که ممکن است شما با آن در وردپرس مواجه شده باشید، آپلود نشدن فایل در سایت است. معمولا زمانی که شما با این مشکل روبهرو هستید ارور Is its parent directory writable by the server یا به زبان فارسی خطای امکان ایجاد شاخه uploads نیست. آیا شاخه مادر آن با سرور قابل نوشتن است؟ را دریافت خواهید کرد.
این خطا ممکن است به دلایل مختلفی ازجمله مجوزهای نادرست، تغییر سطح دسترسی یا موقعیت پوشهها برای شما نمایش داده شود. ما در این مقاله به شما آموزش خواهیم داد چگونه بهراحتی و از روشهای مختلف این ارور را از بین ببرید.
حل خطای امکان ایجاد شاخه uploads نیست در وردپرس
اگر دستورالعملهای ما را در این مقاله گامبهگام رعایت کنید میتوانید مشکل آپلود فایل را در مدتزمان بسیار کوتاهی از سایت خود برطرف کنید.
پوشه آپلود را تغییر دهید
خب اولین روشی که باید تست کنید این است که فایل آپلودها را تغییر دهید؛ این امکان وجود دارد که نمایش ارور Is its parent directory writable by the server ممکن است به این دلیل باشید که وردپرس قادر به شناسایی پوشه آپلودها نیست. پس شما باید این پوشه را تغییر دهید و ببینید که این مشکل برطرف میشود یا خیر.
این مشکل معمولاً زمانی برای شما اتفاق خواهد افتاد که هاست خود را تغییر داده باشید. برای این کار شما باید فایل پیکربندی سایت خود را اصلاح کنید که با استفاده از روش زیر میتوانید این کار را انجام دهید.
خب در وهله اول شما باید وارد پنل مدیریتی FTP شوید و فایل wp-config.php را در آن جستجو کنید، که این فایل معمولاً در پوشه ROOT سایت شما قرار دارد.
بعدازاینکه این فایل را پیدا کردید باید خط زیر را در آن جستجو کنید:
require_once(ABSPATH . 'wp-settings.php');
خب حالا قطعه کد زیر را باید قبل از خط بالا قرار دهید:
define( 'UPLOADS', 'wp-content/uploads' );
بعدازاینکه کد بالا را در فایل مربوطه قرار دادید، آن را ذخیره کنید. خب حالا یک بار دیگر فایل را در سایت خود آپلود کنید، اگر خطای قبلی برای شما نمایش داده نشد به این معنی است که این روش کارساز بوده است؛ در غیر این صورت شما باید از روش بعدی برای رفع ارور “Is its Parent Directory Writable By The Server” استفاده کنید.
سطح دسترسی پوشهها را تغییر دهید
اگر روش بالا، مشکل شما را حل نکرد؛ باید مجوز پوشهها را تغییر دهید، برای این کار باید راهنمای ما را در قسمت زیر قدمبهقدم دنبال کنید: شما این امکان را دارید که از طریق مدیریت پروندهها درهاست خودتان، میزان مجوزها را تغییر دهید و این مشکل را برطرف کنید. برای دسترسی به پنل خودتان میتوانید از برنامههایی مانند FileZilla و یا دیگر برنامههای FTP استفاده کنید.
خب الآن کافی است وارد پنل مدیریتی خودتان شوید و به دایرکتوری نصب وردپرس که معمولاً در پوشه /Public_html قرار دارد بروید.
اگر پوشه Wp-content را باز کنید میتوانید پوشههای مختلفی را در آن مشاهده کنید که یکی از آنها پوشه آپلودها است؛ بر روی پوشه Uploads کلیک راست کنید و گزینه File Permissions را انتخاب نمایید.
با کلیک کردن بر روی گزینه گفتهشده یک پنجره جدید برای شما باز خواهد شد، در این پنجره باید گزینه Numeric Value را انتخاب کنید و عدد 755 را وارد کنید. سپس شما باید به سمت پایین اسکرول کنید و بررسی کنید که گزینه Recurse Into Subdirectories در حالت Checked یعنی بررسیشده، قرار دارد.
حالا باید بر روی Apply To Directories Only کلیک کنید و بعدازآن “OK” را انتخاب کنید.
عددی که در بالا به آن اشاره شد به این معنی است که صاحب پرونده میتواند پروندهها را ویرایش کند و به بیان ساده پرونده قابل نوشتن باشد. این مورد ممکن است خطای عدم آپلود را از بین ببرد.
اگر روش بالا هم باعث از بین رفتن ارور نشد باید مراحل زیر را طی کنید. میتوانید آموزش کامل تغییر سطح دسترسی را ببینید.
تغییر سطح دسترسی در هاست اشتراکی
بعدازاینکه وارد اکانت هاست اشتراکی خود شدید، باید به قسمت Files بروید و File Manager را انتخاب کنید. حالا باید بر روی پوشه آپلودها راست کلیک کنید و گزینه Permissions کلیک کنید.
با کلیک بر روی این گزینه یک صفحه برای شما باز میشود که در آن اجازه تمامی افراد برای شما نمایش داده میشود که شما باید تمامی آنها را بررسی کنید تیک همه گزینه را بزنید؛ حالا باید سطح دسترسی را به 777 تغییر دهید و بر روی گزینه Change کلیک کنید.
در مرحله بعدی باید دوباره بر روی پوشه راست کلیک کنید و تیک گزینههای Group و Others را در بخش Write، بردارید. همانطور که مشاهده میکنید سطح دسترسی بعد از انجام این کار به 755 تغییر پیدا کرده است، حالا باید بر روی Change کلیک کنید.
حل خطای امکان ایجاد شاخه uploads نیست از طریق وب سرور
این روش برای کسانی است که از VPS برای میزبانی سایت خود استفاده کردهاند؛ دقت داشته باشید که این روش تنها برای سرورهایی کارساز است که از لینوکس روی Apache کار میکند.
سرویس آپاچی بهصورت پیشفرض از www-data user و www-data group برای دسترسی به پرونده و پوشهها استفاده میکند. یکی از دلایلی که باعث بروز مشکل و یا نمایش ارور Is its parent directory writable by the server میشود این است که پوشه آپلودها متعلق به www-data نیست.
با توجه به موردی که در بالا به آن اشاره شد، شما باید مدیریت فایل آپلودها را تغییر داده و آن را به www-data محول کنید. ما در این قسمت به شما آموزش میدهیم چگونه بهراحتی این کار را انجام دهید.
خب برای قدم اول باید با استفاده از SSH به VPS متصل شوید و public_html را جستجو کنید و از طریق آن وارد فایل wp-content شوید.
خب حالا شما باید با استفاده از قطعه کد زیر، مالکیت را به www-data تغییر دهید:
chown -R www-data:www-data plugins
بعدازاینکه کد بالا را جایگذاری کردید بهتر است قطعه کد زیر را نیز در پوشه wp-content اجرا کنید، چرا که ممکن است سطح دسترسی بهصورت پیشفرض برای پوشه آپلود، نادرست باشد.
chmod 755 -R uploads
بعدازاینکه این کد را جایگذاری کردید، سطح دسترسی برای تمامی پلاگینها و فایلهای دیگر به 755 تغییر پیدا خواهد کرد.
- مشکلی دارید؟ جواب خود را در پست فروم بگیرید
- منبع : بیست اسکریپت لطفا رعایت کنید