xmlrpc چیست؟ و چرا باید در وردپرس فعال یا غیره فعال باشد؟
همانطور که استفاده از تلفنهای هوشمند روز به روز بیشتر شد نیاز به سرویسهایی که به کمک آنها بتوان سایت وردپرس خود را مدیریت کرد ، بیشتر شد
وردپرس دارای ویژگیهایی است که به ما اجازه می دهد از دور با سایت خود در تعامل باشیم. گاهی اوقات لازم است که به وبسایت خود دسترسی داشته باشیم و کامپیوتر در دسترس نداریم. بنابراین ممکن است از گوشی یا تبلت استفاده کنیم.
پروتکل xmlrpc وردپرس این امکان را به شما خواهد داد که از طریق این پروتکل امکان اتصال انواع سرویسهایی مثل IFTTT ، نرمافزارهای مدیریت سایت وردپرس در محیط ویندوز یا سیستم عامل اندروید و… را فراهم کنید تا دسترسی و کنترل بر روی سایت فراهم شود.
چرا باید XMLRPC را غیرفعال کنید؟
بزرگترین مشکل Xmlrpc
ریسک امنیتی است که برای وبسایت به همراه دارد. البته مشکل مستقیما به Xmlrpc
مربوط نمیشود بلکه طریقه استفاده از این فایل است که موجب می شود که هکرها بتوانند به وبسایت شما حمله کنند.
البته می توان با استفاده از رمزعبور فوق العاده طولانی و قوی یا پلاگین های امنیت وردپرس از سایت خود محافظت کرد. اما بهترین راه محافظت از وبسایت خود همان غیر فعال کرده این فایل است.
روش های غیر فعال کردن xmlrpc
- با استفاده از افزونه Disable XML-RPC-API
- با استفاده از کدنویسی در htaccess
- با استفاده از کدنویسی در فایل function قالب
در ادامه هر سه روش را توضیح خواهیم داد و شما میتوانید با از هر روش که خواستید استفاده نمایید.
1- استفاده از افزونه Disable XML-RPC-API
افزونه “Disable XML-RPC-API” یکی از کاربردی ترین و سبک ترین افزونه برای غیر فعال کردن xmlrpc میباشد که بیش از 10هزار نصب فعال دارد و با استفاده از این افزونه میتوانید به راحتی xmlrpc را برای سایت خود غیر فعال کنید. و استفاده از این افزونه بسیار ساده میباشد.
در قدم اول باید افزونهی Disable XML-RPC-API را از مخزن وردپرس خود نصب و فعال نمایید.
بعد از نصب و فعال سازی در منوی پیشخوان وردپرس گزینهی” Disable XML-RPC Security” اضافه میشود و که از طریق آن میتوانید سرویس xmlrpc را غیر فعال نمایید.
2- استفاده از کدنویسی در htaccess
در مرحله اول باید وارد هاست خود شوید و به پوشهی public html بروید
در قدم باید با فایل htaccess. را پیدا کرده و قسمت edit آن را باز کنید.
بعد از اینکه گزینه edit را انتخار کردید اکنون باید کد زیر را در این فایل اضافه کرده و سیو کنید.
# Block WordPress xmlrpc.php requests
<Files xmlrpc.php>
order deny,allow
deny from all
allow from ***.***.***.***
</Files>
توجه داشته باشید که در کد بالا باید به جای کاراکتر * ای پی خود را وارد نمایید.
اکنون فایل را سیو کرده تا سرویس xmlrtc غیر فعال شود.
3- استفاده از کدنویسی در فایل function قالب
در ابتدا باید وارد هاست سایت خود شوید.
سپس به مسیر بارگزاری قالب خود بروید.
سپس فایل function.php را باز کنید.
سپس کد زیر را به انتهای آن اضافه کنید.
function remove_x_pingback($headers) {
unset($headers['X-Pingback']);
return $headers;
}
add_filter('wp_headers', 'remove_x_pingback');
add_filter('xmlrpc_enabled', '__return_false');
اکنون xmlrpc غیر فعال شده است.
روشهای دیگری نیز برای این کار وجود دارد مانند حذف فایل xmlrpc که با حذف این فایل تمام مراجعات با شکست مواجه میشود ولی اجرای این روش توصیه نمیشود.
در پایین لیست سوالاتی که ممکن است با آن ها مواجه بشوید آماده کردیم:
برای افزایش امنیت سایت چون که با فعال بودن این سرویس هکرها میتوانند کنترل سایت را بدست بگیرند با غیر فعال کردن این سرویس امنیت سایت خود را افزایش دهید
شما از هر روشی که خواستید میتوانید استفاده کنید و ترجیح ما روش اول است که در فایل htaccess دسترسی xmlrpc را قطع میکند.
اگر به امنیت سایت خود اهمیت میدهید بله انجام این کار واجب است.
خیر فقط به دلیل افزایش امینت این سرویس را غیر فعال میکینم
چون که با روش هایی که توضیح دادیم این سرویس غیرفعال میشود و اگر زمانی نیاز داشتید که فعال شود میتوانید آن را فعال کنید ولی اگر فایل آن را پاک کنید دیگر امکان فعال سازی آن به این راحتی نیست.
حرف آخر
پس تا اینجا فهمیدیم که xmlrpc سرویسی است که به کمک آن برای ایجاد ارتباط سایت با سرویسهایی است که از طریق آن میتوانید اقدام به مدیریت سایت خود در بستر http کنید ولی اخیرا ثابت شده که فعال بودن این سرویس باعث کاهش امنیت میشود و بهتر است که آن را غیر فعال کنید.
لطفا تجربههای کاربری خود را برای ما بنویسید و اگر به مشکلی برخوردید میتوانید از تیم پشتیبان وبجامه کمک بگیرید.