محتوای آموزشی وبلاگ نتآرام
میخواهید افزونهای را نصب یا بهروز کنید، اما وردپرس بهجای انجام کار فرمی برای نام میزبان، نام کاربری و رمز FTP نشان میدهد. معمولاً وردپرس وقتی نمیتواند با روش مستقیم و مناسب روی فایلهای لازم کار کند، روش دیگری برای دسترسی به فایلها پیشنهاد میدهد. این پیام الزاماً به معنی اشتباه بودن رمز پیشخوان یا نیاز به خرید هاست جدید نیست.
راهحل درست به روش اجرای PHP، مالکیت فایلها و تنظیمات همان سرور بستگی دارد. در این آموزش اول محل مشکل را تشخیص میدهیم، سپس مسیر امن هاست اشتراکی و سرور اختصاصی را جدا میکنیم. به پوشههای سایت مجوز ۷۷۷ ندهید و یک خط تنظیم ناشناس را کورکورانه به فایل پیکربندی اضافه نکنید.
اول ببینید پیام کجا و برای چه کاری ظاهر میشود
نام افزونه یا پوسته، زمان و کاری را که انجام میدادید یادداشت کنید: نصب افزونه جدید، بهروزرسانی افزونه موجود یا بهروزرسانی هسته. سپس ببینید آیا این فرم برای چند افزونه مختلف هم ظاهر میشود یا فقط برای یک بسته خاص.
- اگر برای چند نصب و بهروزرسانی ظاهر میشود، مسیر دسترسی وردپرس به فایلها، مالکیت و روش اجرای PHP ارزش بررسی دارند.
- اگر فقط هنگام نصب یک فایل خاص پیام دیگری مثل خطای حجم، فایل خراب یا نبود
style.cssمیبینید، ابتدا همان پیام را دنبال کنید؛ همه خطاهای نصب به FTP مربوط نیستند. - اگر گزینه نصب افزونه را اصلاً نمیبینید، احتمال محدودیت نقش کاربر یا مدیریت چندسایتی وجود دارد. درخواست FTP و نداشتن مجوز مدیر شبکه دو موضوع جدا هستند.
اگر سایت فروشگاهی یا پرترافیک است، ابتدا پشتیبان قابل بازیابی از فایلها و پایگاه داده داشته باشید و تغییرات را در محیط آزمایشی یا زمان مناسب انجام دهید. رمز پیشخوان، هاست یا FTP را در عکس خطا و تیکت عمومی نفرستید.
مرحله اول: نصب درست و فضای کافی را بررسی کنید
اگر چند سایت روی هاست دارید، مطمئن شوید در پیشخوان همان دامنه وارد شدهاید. در cPanel، Files ← File Manager را باز کنید و از فهرست دامنهها مسیر ریشه سایت موردنظر را پیدا کنید. برای دامنه اصلی ممکن است مسیر
public_html باشد؛ سایتهای دیگر میتوانند پوشه دیگری داشته باشند. به دنبال پوشههای wp-admin، wp-includes و wp-content همان نصب بگردید؛ وجود این نامها سرنخ است، اما پیش از تغییر باید مطمئن شوید پوشه متعلق به همان سایت است.در صفحه اصلی cPanel یا بخش Disk Usage، فضای مصرفشده و سقف حساب را ببینید. اگر فضا یا سهمیه فایل تمام شده باشد، وردپرس ممکن است نتواند فایلهای نصب را بسازد. فایلهای بزرگ را شناسایی کنید، از داده مهم پشتیبان داشته باشید و فقط موردی را پاک یا منتقل کنید که مالک و کاربرد آن را میشناسید. حذف پوشه افزونه فعال یا بکاپ تنها به امید رفع پیام FTP میتواند مشکل بزرگتری ایجاد کند.
بعد از رفع کمبود فضای تأییدشده، با یک افزونه معتبر و در محیط مناسب دوباره نصب را امتحان کنید. اگر فرم همچنان ظاهر میشود، به مرحله بعد بروید؛ داشتن فضای خالی کافی به معنی درست بودن مالکیت و دسترسی نیست.
مرحله دوم: مسیر نوشتن و مالکیت را بشناسید
وردپرس برای نصب و بهروزرسانی باید بسته را در مسیرهای مربوط به همان نصب مدیریت کند؛ برای افزونهها پوشه
wp-content/plugins و پوشه موقت مرتبط از جمله بخشهای مهماند. دو موضوع متفاوت را باید دید:مجوز فایل و پوشه مشخص میکند چه کسی اجازه خواندن، نوشتن یا ورود به آن را دارد. مالکیت مشخص میکند فایل متعلق به کدام حساب یا گروه است. یک عدد مجوز ممکن است در یک پیکربندی درست باشد، ولی اگر PHP با حساب دیگری اجرا شود، همان عدد بهتنهایی مشکل را حل نکند.
در File Manager معمولاً کنار هر فایل یا پوشه ستون Permissions دیده میشود. مقدار فعلی پوشه وردپرس،
wp-content و plugins را بدون تغییر یادداشت کنید. در بسیاری از پیکربندیهای متداول، پوشهها مقادیری مانند ۷۵۵ یا ۷۵۰ دارند؛ ولی مقدار مناسب به حساب اجرای PHP، گروهها و سیاست میزبان بستگی دارد. عدد را برای همه سایتها یکسان فرض نکنید و مجوز همه فایلها را یکجا تغییر ندهید.اگر بعد از انتقال سایت یا استخراج فایل با حساب مدیریتی مشکل شروع شده، اختلاف مالکیت فایلهای منتقلشده و حساب اجرای PHP یک احتمال است. در هاست اشتراکی، تغییر مالکیت معمولاً نیاز به مسئول سرور دارد. از پشتیبانی بخواهید مالک پوشههای همان سایت و هویت اجرای PHP را تطبیق دهد و مطابق پیکربندی امن هاست اصلاح کند. لازم نیست رمز حساب را برای این بررسی بفرستید.
اگر مدیر سرور لینوکس هستید: مشاهده دقیق بدون تغییر
این مرحله برای کسی است که به ترمینال سرور و حساب مدیریتی مجاز دسترسی دارد. ابتدا به پوشه واقعی همان نصب بروید؛ این مسیر نمونه است:
کد / دستورcd /home/ACCOUNT/public_html
ACCOUNT و مسیر را با اطلاعات واقعی سایت جایگزین کنید. اگر پوشه وجود ندارد، به مسیر دیگری حدس نزنید. برای مشاهده مالک، گروه و مجوز چند مسیر مشخص اجرا کنید:stat -c '%U %G %a %n' . wp-content wp-content/plugins
این فرمان فایلها را تغییر نمیدهد. برای مثال، بخشی از خروجی فرضی ممکن است چنین باشد:
کد / دستورsiteuser siteuser 755 wp-content
siteuser siteuser 755 wp-content/plugins
در هر خط بهترتیب نام مالک، گروه، عدد مجوز و مسیر را میبینید. نام
siteuser فقط مثال است؛ خروجی root برای یکی از مسیرها هم همیشه بهتنهایی اثبات خطا نیست. باید آن را با کاربری که PHP همان سایت واقعاً با آن اجرا میشود و سیاست میزبانی تطبیق دهید. در بعضی تنظیمات PHP-FPM، هر سایت حساب جدا دارد؛ در بعضی محیطها معماری متفاوت است.اگر مدیر سرور اختلاف مالکیت را برای همان سایت تأیید کرد، باید مطابق طراحی سرور و پس از داشتن نسخه پشتیبان، فقط مسیرهای لازم را اصلاح و نتیجه را آزمایش کند. فرمان بازگشتی
chown یا chmod را از یک راهنمای عمومی بدون شناسایی مسیر، لینکهای نمادین، حساب سایت و تنظیمات سرور اجرا نکنید؛ یک مسیر اشتباه میتواند چند سایت یا فایل حساس را تحت تأثیر قرار دهد.آیا اضافهکردن FS_METHOD=direct راهحل است؟
گاهی در اینترنت پیشنهاد میشود خطی با
FS_METHOD و مقدار direct را به wp-config.php اضافه کنید. این تنظیم روش دسترسی را تحمیل میکند؛ خودبهخود مالکیت اشتباه یا سیاست ناامن سرور را درست نمیکند و در پیکربندی نامناسب میتواند خطر امنیتی داشته باشد. وردپرس نیز میتواند وقتی شرایط مناسب است روش مستقیم را تشخیص دهد.پس اول علت واقعی را پیدا کنید. اگر مدیر متخصص پس از بررسی معماری تشخیص داد تنظیم مشخصی لازم است، از فایل پیکربندی پشتیبان بگیرد، وجود تعریف قبلی و روش بازگشت را بررسی کند و بعد از تغییر نصب و امنیت را آزمایش کند. این فایل معمولاً اطلاعات اتصال پایگاه داده دارد؛ محتوای آن را در پیام یا تصویر عمومی منتشر نکنید.
اگر میزبان واقعاً استفاده از انتقال فایل را لازم میداند
از پشتیبانی میزبان بپرسید کدام روش امن برای همان فرم و همان سرور پشتیبانی میشود و نام میزبان و مسیر صحیح چیست. FTP ساده ممکن است اطلاعات ورود را بدون رمزنگاری منتقل کند. نامهایی مانند FTP، FTPS و SFTP روشهای متفاوتی هستند و وجود گزینه یکی لزوماً به معنی پشتیبانی از دیگری نیست.
اگر میزبان امکان روش امن و مناسب ارائه میدهد، فقط از حساب محدود مخصوص همان سایت و از طریق اتصال امن و مورد تأیید او استفاده کنید. اطلاعات را در فرم رسمی سایت خود وارد کنید، نه صفحهای که از ایمیل ناشناس باز شده است. اگر روش امن یا هویت سرور روشن نیست، ورود اطلاعات را متوقف و از پشتیبانی مسیر صحیح را بخواهید. ذخیره رمز ثابت FTP داخل
wp-config.php یا دادن رمز اصلی هاست به افزونه ناشناس، راهحل مناسبی نیست.اگر بعد از اصلاح باز هم پیام میآید
۱. همان سایت و مسیر نصب را دوباره تطبیق دهید؛ ممکن است پیشخوان و پوشه بررسیشده به دو سایت متفاوت تعلق داشته باشند.
۲. فضای حساب و پیام خطای تازه را ببینید. خطای کمبود فضا، مجوز و رمز، راهحل یکسان ندارند.
۳. از مدیر سرور بخواهید کاربر اجرای PHP، مالکیت مسیرهای لازم و تنظیمات مربوط به روش فایل وردپرس را با گزارش زمان آزمایش بررسی کند.
۴. در محیط آزمایشی، افزونههای امنیتی یا مدیریت بهروزرسانی مرتبط را با هماهنگی مدیر یکییکی بررسی کنید. غیرفعالکردن همه افزونههای فروشگاه اصلی وسط خرید مشتریان، روش مناسبی برای تشخیص نیست.
۵. اگر نصب یک افزونه خاص شکست میخورد اما بقیه درستاند، منبع و ساختار همان بسته و سازگاری نسخه را بررسی کنید. مشکل یک فایل را به مجوز همه سرور تعمیم ندهید.
برای درخواست پشتیبانی، نام دامنه، زمان بروز خطا، نام کار انجامشده، مسیر نصب تأییدشده و تصویر فرم بدون اطلاعات ورود را بفرستید. اگر خروجی
stat را در اختیار دارید، فقط همان مسیرهای مربوط را از طریق کانال امن به مدیر سرور بدهید.آزمایش نهایی
پس از اصلاح علت، در سایت آزمایشی یا زمان مناسب یک افزونه معتبر را نصب یا بهروزرسانی کنید. انتظار این است که عملیات با روش مورد تأیید میزبان کامل شود و سایت و پیشخوان همچنان کار کنند. سپس صفحه افزونهها، صفحه اصلی و یک عملکرد مهم سایت را ببینید. اگر نصب موفق شد اما مجوزها بیش از حد باز ماندهاند، کار امنیتی هنوز تمام نشده است.
برای آشنایی با امکانات میزبانی، صفحه هاست وردپرس نتآرام را ببینید. ابتدا تنظیمات همان سایت و سرور را تشخیص دهید؛ تغییر سرویس بهتنهایی علت مالکیت یا پیکربندی اشتباه را ثابت نمیکند.
منابع فنی
برچسبها:
اشتراکگذاری:
لینکدینتلگرامایکس
مقاله قبلی
مقاله بعدی
دیدگاهها (۰)
دیدگاههای تاییدشده و پاسخهای تیم نتآرام
