ارور Failed to Open Stream در وردپرس زمانی به وجود میآید که ارتباط بین دیتابیس و فایلهای موجود در فایل منیجر هاست قطع شده باشد. این ارتباط میتواند به هر دلیلی مثل تغییرات در htaccess. یا پیوندهای یکتا رخ دهد. در ادامه این پست قصد دارم به نحوه رفع خطای Failed to Open Stream وردپرس بپردازم.
وقتی این خطا رخ میدهد پیغامهای مختلفی در سایت نمایش داده میشود که بستگی به علت خطا دارد و معمولاً شامل مواردی مثل یکی از سه نمونههای زیر است.
Warning: require(/home/website/wp-includes/load.php): failed to open stream: No such file or directory in /home/website/wp-settings.php on line 19 Fatal error: require(): Failed opening required ‘/home/website/wp-includes/load.php’ (include_path=’.:/usr/share/php/:/usr/share/php5/’) in /home/website/wp-settings.php on line 19 Last Error: 2018-04-04 14:52:13: (2) HTTP Error: Unable to connect: ‘fopen(compress.zlib://https://www.googleapis.com/analytics/v3/management/accounts/~all/webproperties/~all/profiles?start-index=1): failed to open stream: operation failed’
چرا خطای Failed to Open Stream وردپرس رخ میدهد؟
دلایل به وجود آمدن این خطا شامل موارد متعددی میباشد. همانطور که اشاره کردم این ارور بخاطر قطع ارتباط فایلها با وردپرس رخ میدهد؛ البته به این معنی نیست که مثلا اگر mysql یا php هاست دچار مشکلی شد با این خطا مواجه شوید.
رایجترین دلایل قطع ارتباط شامل موارد زیر میشود.
- تغییر کدها در هسته وردپرس، افزونهها یا قالب
- تغییر سطح دسترسی فایلها یا پوشهها در هاست
- ایجاد تغییرات در فایل htaccess.
- ایجاد خطا در پیوندهای یکتا وردپرس
آموزش رفع ارور Failed to Open Stream در وردپرس
بسته به هر دلیلی که باعث ایجاد این ارور در وردپرس میشود باید راهکار خاصی را دنبال کنید که در ادامه به معرفی همه این روشها میپردازم.
حالت اول: no such file or directory
اگر این خطا همراه با پیغام no such file or directory نمایش داده شود به این معنی است که فایل یا پوشهای از قالب یا افزونه وردپرس حذف شده یا اینکه امکان خواندن آن توسط دیتابیس وجود ندارد. همین مسئله باعث ایجاد این خطا شده است.
در این صورت نام فایل مورد نظر در مسیر خطا نمایش داده میشود که باید آن را دنبال کرده و ببینید که دلیل عدم کارکرد درست فایل یا پوشه چه چیزی است. در صورتی که فایل یا پوشه مورد نظر وجود نداشته باشد میتوانید به صورت دستی آن را در هاست قرار دهید یا اینکه مجدداً فایل کامل قالب یا افزونه را بارگذاری کنید.
حالت دوم: ایجاد تغییرات در htaccess.
گاهی اوقات این ارور درست بعد از اینکه تغییراتی در htaccesss. ایجاد میکنید رخ میدهد. البته این تغییرات صرفا با ویرایش مستقیم فایل صورت نمیگیرد و میتواند با کدنویسی در فانکشن قالب یا از طریق افزونهها و ابزار هاست نیز انجام گیرد.
بنابراین در مرحله دوم باید فایل htaccess. را بررسی کنید. کافی است یک بار این فایل را تغییر نام داده و سپس در صورت داشتن دسترسی به پیشخوان وردپرس به مسیر تنظیمات> پیوندهای یکتا مراجعه کرده و در نهایت بدون اینکه تغییری در گزینهها ایجاد کنید، روی دکمه ذخیره تغییرات کلیک کنید.
حالت سوم: Unable to connect
در این حالت همانطور که از مفهوم آن مشخص است در ارتباط با اسکریپت این مشکل رخ میدهد. این مورد بیشتر برای ابزارهای شخص ثالث مانند آمارگیر گوگل یا ابزار فیسبوک رخ میدهد که در فرایند احراز هویت مشکلی رخ داده و امکان دسترسی و اتصال به این ابزارها دچار مشکل میشود.
در نتیجه در این حالت باید دلایل را بررسی کنید که برای این مورد بهتر است از یک توسعه دهنده وردپرس کمک بگیرید.
حالت چهارم: ایجاد تغییرات در سطح دسترسی
گاهی اوقات هم این خطا بخاطر تغییر سطح دسترسی فایلها و پوشهها در وردپرس رخ میدهد. وقتی افزونهای یا قالبی نصب میکنید هر کدام از فایلها و پوشهها دارای سطح دسترسی خاصی هستند که برای فایلها باید روی مقدار 644 و برای پوشهها روی مقدار 755 تنظیم شده باشند.
همین تغییر سطح دسترسی باعث میشود تا خواندن برخی کدها دچار مشکل شده و این خطا به این صورت که از عبارت Permission denied در آن استفاده میشود نمایش داده خواهد شد. در این حالت کافی است مسیر خطا را دنبال کرده و سطح دسترسی فایل/پوشه مورد نظر را تصحیح کنید.
امیدوارم که این آموزش هم مورد توجه و پسند شما قرار گرفته باشد و به کمک آن بتوانید انواع ارور Open Stream وردپرس را برطرف کنید. در صورتی که در خصوص این آموزش سوال یا مشکل خاصی داشتید میتوانید از بخش دیدگاهها ارسال کنید.
۲ پاسخ
من دو روزه گیر کردم رو این خطا، بلاخره تونستم درستش کنم. ممنون از وب سایت خوبتون
بسیار عالی