Деактивирайте напълно вградената функция за търсене в WordPress, за да предотвратите сканирането и срива на базата данни от злонамерени програми.

Напълно деактивиране WordPress Фронтендът разполага с вградена функция за търсене, за да се предотврати претоварването на базата данни от сканиране.

Базата данни се срива не защото уебсайтът ви има твърде много съдържание, а защото все още използвате това абсурдно неефективно търсене в WordPress.

Много собственици на уебсайтове пренебрегват един факт: предният край... ?s= Параметрите за търсене са любими на хакерите и скенерите.

Ако някой продължава да прави заявки към интерфейса за търсене, вашата база данни ще бъде принудена да изпълнява хиляди безсмислени заявки.

Резултатът? Използването на процесора се покачи рязко, използването на паметта се увеличи драстично и уебсайтът се срина.

Това не е преувеличение, а реално и болезнено преживяване на безброй сайтове.

Защо да деактивирате вграденото търсене в WordPress?

Вградената функция за търсене на WordPress е по същество пълнотекстова LIKE заявка в базата данни.

Тази заявка е изключително неефективна, особено когато броят на статиите надвишава 10 000; едно търсене може да отнеме повече от 0.5 секунди.

Ако някой използва уеб робот или атакуващ скрипт, за да изпраща десетки заявки за търсене в секунда, вашата база данни ще бъде претоварена мигновено.

Според официалната документация на WordPress, търсенето чрез нативно търсене няма защитни механизми и е изцяло изложено на предния край. Това означава, че нападателите могат да използват тази входна точка, без дори да влизат в системата.

Деактивирайте напълно вградената функция за търсене в WordPress, за да предотвратите сканирането и срива на базата данни от злонамерени програми.

Алтернативно решение: Свържете се с по-интелигентна търсачка

Много професионални уебсайтове вече не разчитат на вграденото търсене на WordPress.

Например, достъп Търсене в Google за програмиране или Algolia Такива услуги за търсене на трети страни са не само бързи, но и предоставят по-точни резултати.

По-важното е, че тези услуги няма да осакатят вашата база данни, защото всички заявки се изпълняват външно.

Така че, ако вашият уебсайтПозициониранеАко става въпрос за сайт с инструменти, блог или дори сайт, който вече разчита на външно търсене, няма причина да продължите да запазвате вградената функция за търсене на WordPress.

Напълно деактивирайте имплементацията на код за търсене в предния край на WordPress

Най-прекият начин е да се съсредоточите върху темата. functions.php Добавете следния код към файла:

// 禁用 WordPress 前台搜索功能,防止被扫描拖垮数据库
function disable_wp_search( $query, $error = true ) {
    if ( is_search() && !is_admin() ) {
        $query->is_search = false;
        $query->query_vars['s'] = false;
        $query->query['s'] = false;
        if ( $error == true ) {
            // 直接返回 404 页面,不走任何数据库查询
            $query->set_404();
            status_header( 404 );
            nocache_headers();
        }
    }
}
add_action( 'parse_query', 'disable_wp_search' );
add_filter( 'get_search_form', '__return_empty_string' );

Логиката на този код е много проста:

  • След като бъде открита заявка за търсене на преден план, заявките към базата данни се блокират незабавно.
  • Връщането към страница 404 напълно блокира входната точка.
  • В същото време формата за търсене беше премахната, за да се предотвратят случайни действия от страна на потребителите.

Предимството на този метод е, че дори ако нападателят направи множество заявки... ?s=xxxТова няма да задейства никакви заявки към базата данни.

По-елегантна имплементация: използване на Fluent Snippets

Ако не искате директно да променяте файловете на темата, можете да използвате... Fluent Snippets плъгин.

Този плъгин ви позволява да добавяте фрагменти от код директно във фонов режим и да виждате ефектите и модификациите. functions.php Същото, но по-безопасно.

След като е активирана, можете лесно да управлявате целия си персонализиран код, без да се притеснявате, че актуализациите на темата ще го презапишат.

Реални резултати: Натоварването на базата данни спадна рязко.

В конфигурация от 2-ядрен процесор + 4GB RAM На VPS, когато търсенето в реално време правеше 50 заявки в секунда, натоварването на процесора на базата данни скочи до 95%.

След деактивиране на търсенето, същата заявка върна директно грешка 404, а натоварването на базата данни беше почти нулево.

Ето защо много експерти по сигурността силно препоръчват незабавно да изключите вграденото търсене на WordPress, ако не ви е необходимо.

Изследователите по сигурността изрично заявиха в официалния блог на Sucuri:

„Търсенето в WordPress е една от най-лесните за експлоатация входни точки; нападателите могат да създават атаки за отказ от услуга, като правят чести заявки за търсене.“

Това твърдение е достатъчно, за да обясни проблема.

В заключение: Безопасността не е избор, а задължителен курс.

Сигурността на уебсайта не е просто бонус, а въпрос на живот и смърт.

Деактивирането на вграденото търсене на WordPress може да изглежда като малко действие, но може да предпази базата ви данни от претоварване.

В тази епоха на информационно претоварване, истинската мъдрост не се крие в добавянето на функции, а в решителното отхвърляне на тези, които са неефективни или опасни.

Запомнете: Безопасността не е цена, а ценност.

Ако все още се колебаете, запитайте се следното: Бихте ли предпочели да оставите базата данни да се срине сред смеха на нападателите или бихте предпочели да поемете контрол над ситуацията?

Блог на Hope Chen Weiliang ( https://www.chenweiliang.com/ Статията „Пълно деактивиране на функцията за търсене в WordPress, за да се предотврати сканирането на злонамерени програми от извличане на данни от базата данни“, споделена тук, може да ви бъде полезна.

Добре дошли да споделите връзката към тази статия:https://www.chenweiliang.com/cwl-34192.html

За да отключите още скрити трикове🔑, заповядайте в нашия Telegram канал!

Споделете и харесайте, ако ви харесва! Вашите споделяния и харесвания са нашата постоянна мотивация!

 

发表 评论

Вашият имейл адрес няма да бъде публикуван. Използват се задължителните полета * Етикет

Справочник на статиите
Преминете към Top