افزایش امنیت و سرعت وردپرس توسط فایل کانفیگ

در این آموزش قصد داریم افزایش سرعت وردپرس و کانفیگ امنیت وردپرس بررسی و انجام بدیم که شما با استفاده از این روش ها می توانید امنیت سایت خود را فقط تا 10 درصد افزایش بدید و به این موضوع دقت کنید که امنیت همیشه کافی نیست و نیاز به بررسی مداوم دارد. سعی کنید هاست که خرید می کنید آنتی ویروس قوی داشته باشد تا از افزونه های مخرب جلوگیری کند.

برای این که مطمعن بشیم امنیت وردپرس را به درستی انجام دادیم سایت خود را ارزیابی کنید و به عنوان یک هکر ساده فکر کنید که اگر وردپرس که برروی هاست خود را به صورت پیش فرض باشد فایل ها و پوشه ها می توانید به راحتی حدس بزنیم که آدرس فایل ها را میدانیم و با تست و خطا برروی آدرس ها سعی برای دسترسی پیدا کردن (نفوذ) میکنم.

1- فایل wp-config.php خود را جابه جا کنید.

به طور کلی ، وردپرس به دنبال یک فایل wp-config در root وب خود است. اگر در آنجا موجود نباشد ، به طور خودکار یک سطح بالاتر جستجو می کند. بنابراین ، فقط کافی است این پرونده را یک پوشه بالاتر از پوشه web-root قرار دهید. با این کار ، هیچ کس نمی تواند بدون دسترسی SSH یا FTP به آن دسترسی پیدا کند. اگر پرونده wp-config خود را به یک مکان منحصر به فرد منتقل می کنید ، توصیه می شود یک فایل wp-config دیگری در پوشه اصلی ایجاد کنید که به “wp-config.php” واقعی آدرس دهد.

define('ABSPATH', dirname(__FILE__) . '/');

require_once(ABSPATH . '../path/to/wp-config.php');

2- بازبینی های بعدی

به طور پیش فرض ، وردپرس به طور خودکار هر بازبینی نسخه را ذخیره می کند. هرچقدر که این ویژگی مفید باشد ، این ویژگی پایگاه داده MySQL را با داده های غیرضروری گسترش می دهد؛ به اندازه ای که توانایی بیش از حد برای پردازش آن لازم باشد. در نتیجه سرعت سایت کم خواهد شد.

define( ‘WP_POST_REVISIONS’, 2 );

define( ‘WP_POST_REVISIONS’, false );

بسته به نیاز خود ، می توانید آن را به اندازه تعداد بازبینی ها محدود کنید یا همه را با هم غیرفعال کنید.

3- بازه زمانی ذخیره خودکار (auto save) را تغییر دهید.

هنگام ویرایش یک پست ، وردپرس از Ajax برای ذخیره خودکار بازبینی در پست هنگام ویرایش استفاده می کند. ممکن است بخواهید این مقدار را برای تأخیرهای بیشتر بین Auto-Save افزایش دهید یا این مقدار را کاهش دهید تا مطمئن شوید هرگز تغییرات را از دست نمی دهید. پیش فرض 60 ثانیه است.

define( ‘AUTOSAVE_INTERVAL’, 160 ); // Seconds

4- پاک کردن ویرایشهای تصویر

اگر از ویرایشگر تصویر در وردپرس استفاده نمی کنید ، می توانید از این مرحله صرف نظر کنید. توجه داشته باشید که هر بار که تصویری را ویرایش می کنید ، نسخه های جایگزین ایجاد می شوند. از آنجا که وردپرس به طور پیش فرض 3 نسخه از تصویر thumbnail ، اندازه متوسط و بزرگ را ایجاد می کند، این شامل تنظیمات تم نیست. تعداد نسخه های ساخته شده، می تواند در مجموع 6 یا 7 نسخه و غیره باشد.

define( ‘IMAGE_EDIT_OVERWRITE’, true );

5- الزام گواهینامه SSL برای ورود ها و ادمین

با این تعریف آسان SSL بخش ادمین خود را ایمن کنید. این ویژگی برای مواقعی مفید است که بخواهید ورود به سیستم و قسمت ادمین را ایمن کنید تا هر دو گذرواژه و کوکی هرگز به وضوح ارسال نشوند.  این قابلیت برای کسانی که از طریق wifi عمومی وارد وردپرس خود می شوند مفید است.

define( ‘FORCE_SSL_ADMIN’, true );

6- ویرایش پرونده / به روزرسانی های پلاگین را غیرفعال کنید

با این کار کاربران قادر به استفاده از قابلیت نصب / بروزرسانی پلاگین و تم از قسمت ادمین وردپرس نخواهند بود. تنظیم این مقدار ویرایشگر پلاگین و تم را نیز غیرفعال می کند.

define( ‘DISALLOW_FILE_EDIT’, true );

علاوه بر این ، همچنین می توانید از بروزرسانی و نصب تم ها و افزونه ها و به روزرسانی وردپرس از طریق پنل ادمین توسط کاربران غیر مجاز جلوگیری کنید.

define( ‘DISALLOW_FILE_MODS’, true );

7- افزایش حافظه اختصاص یافته به PHP

این گزینه به شما امکان می دهد حداکثر حافظه قابل مصرف توسط PHP را تعیین کنید. در صورت دریافت پیامی مانند “Allowed Memory Size of Bytes Exhausted” ، تنظیم این مقدار ممکن است ضروری باشد. اگر به PHP 64 مگابایت اختصاص داده شده باشد ، نیازی به تنظیم این مقدار روی 64 مگابایت نیست زیرا وردپرس در صورت نیاز به طور خودکار از همه 64 مگابایت استفاده خواهد کرد.

define( ‘WP_MEMORY_LIMIT’, ‘256M’ );

کارهای بخش ادمین بیش از عملکرد معمول به حافظه نیاز دارند. وقتی در بخش ادمین هستید ، می توانید با تعریف WP_MAX_MEMORY_LIMIT حافظه را از WP_MEMORY_LIMIT کم یا زیاد کنید.

define( ‘WP_MAX_MEMORY_LIMIT’, ‘512M’ );

8- تنطیم Cookie دامنه

اگر از CDN مانند MaxCDN یا JetPack Photon برای ارائه تصاویر خود استفاده می کنید ، می توانید دامنه کوکی را فقط روی دامنه غیر استاتیک خود تنظیم کنید تا از ارسال کوکی های وردپرس با هر درخواست به محتوای ثابت در Sub-Domain شما جلوگیری کند. این امر بایت های غیرضروری مورد نیاز برای بارگیری کاربر نهایی را کاهش می دهد، بنابراین سرعت سایت را کمی افزایش می دهد.

define( ‘COOKIE_DOMAIN’, ‘www.example.com’ );

9- Cron و Cron Timeout را غیرفعال کنید

هر بار بازدید کننده از سایت شما بازدید می کند ، مانند یک pingger عمل می کند و سرور شما را برای لیستی از کارها جاسازی می کند. اگر برنامه ای برای انجام وجود داشته باشد ، پینگ وظایفی مانند پست های برنامه ریزی شده ، حذف حافظه پنهان منقضی شده، لیست تعداد نظرات را به روز می کند. در صورت عدم نیاز به Cron، آن را غیرفعال کنید.

define( ‘DISABLE_WP_CRON’, true );

اگر سایتی با بازدید بالا دارید ، می توانید با محدود کردن فرکانس پینگ ، منابع سرور را کاهش دهید. اطمینان حاصل کنید که یک فرایند cron نمی تواند بیش از یک بار در هر WP_CRON_LOCK_TIMEOUT ثانیه اجرا شود.

define( ‘WP_CRON_LOCK_TIMEOUT’, 60 );

10- بهینه سازی پایگاه داده خودکار

پشتیبانی بهینه سازی پایگاه داده به صورت خودکار وجود دارد که می توانید با اضافه کردن کد زیر به پرونده wp-config.php فقط در صورت نیاز به این ویژگی، آن را فعال کنید.
define( ‘WP_ALLOW_REPAIR’, true );

11- مجوزهای یا دسترسی پرونده را لغو کنید

اگر میزبان شما برای همه پرونده های کاربر محدودیت داشته باشد ، می توانید مجوزهای پرونده را نادیده بگیرید. غالبا شما نیازی به این کار ندارید ، اما این مورد برای کسانی که به آن نیاز دارند وجود دارد.

define(‘FS_CHMOD_FILE’, 0644);
define(‘FS_CHMOD_DIR’, 0755);

12- درخواستهای خارجی را مسدود کنید

اگر می خواهید از درخواست های خارجی وردپرس جلوگیری کنید ، این قطعه را به wp-config.php اضافه کنید:

define(‘WP_HTTP_BLOCK_EXTERNAL’, true);

این امر از بروز اتفاقاتی که به طور معمول اتفاق می افتند مانند بروزرسانی ها ، اطلاعات داشبورد و گزارش داده جلوگیری می کند. خوشبختانه دادن دسترسی به هر آنچه که لازم است آسان است. در اینجا مثالی آورده شده است که به wordpress.org اجازه دسترسی می دهیم:

define(‘WP_ACCESSIBLE_HOSTS’, ‘wordpress.org’);

13- قفل کردن wp-config.php

همانطور که همه ما می دانیم wp-config.php یکی از مهمترین فایل های وردپرس است. بنابراین مهم است که دستکاری در آن برای هکرها غیرقابل دسترس باشد. اگر وبلاگ شما در وب سرور Apache در حال اجرا است ، می توانید دستورالعمل های زیر را به پرونده .htaccess اضافه کنید.

< files wp-config.php>
order allow,deny
deny from all
< /files>

14- پیشوند جدول Database را تغییر دهید

وردپرس به طور پیش فرض از پیشوند جدول wp_ استفاده می کند. از آنجا که wp_ پیش فرض هر سایت است، هکرها می توانند راه حل خود را هنگام بروز خطا حدس بزنند. اگر یک پایگاه داده ایمن تر می خواهید می توانید پیشوند جدول پیچیده تری را انتخاب کنید. پیشوند جدول را از wp_ به مورد دیگری مانند این wp_dfah87_ تغییر دهید.

$table_prefix = ‘dfah87_’;

مهم! فقط پیشوند جدول را برای یک سایت جدید تغییر دهید ، درهناگم ساخت سایت توصیه نمی شود.
سطل زباله را سریعتر خالی کنید
وردپرس شامل یک سطل آشغال است. بنابراین پست های حذف شده می توانند در مدت زمان مشخصی بازیابی شوند و بلافاصله از پایگاه داده حذف نمی شوند. استاندارد تخلیه خودکار 30 روز است.
اگر می خواهید این زمان را کاهش یا افزایش دهید ، می توانید این کار را از طریق کد زیر انجام دهید.
Entry = “0” به این معنی است: عملکرد سطل آشغال کاملا غیرفعال می شود و پست ها بلافاصله پس از حذف، پاک می شوند و نمی توانند بازیابی شوند.
توجه! وردپرس درخواست تأییدیه نمی کند، بنابراین مراقب باشید.

define(‘EMPTY_TRASH_DAYS’, 7 ); // Tage

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.