Directori d'articles
Desactiva completament WordPress El front-end inclou una funció de cerca nativa per evitar que la base de dades es vegi saturada durant l'escaneig.
La base de dades s'està bloquejant no perquè el vostre lloc web tingui massa contingut, sinó perquè encara esteu utilitzant aquesta cerca nativa de WordPress ridículament ineficient.
Molts propietaris de llocs web passen per alt un fet: el front-end... ?s= Els paràmetres de cerca són els preferits dels pirates informàtics i els escàners.
Si algú continua fent sol·licituds a la interfície de cerca, la base de dades es veurà obligada a executar milers de consultes sense sentit.
El resultat? L'ús de la CPU va augmentar de cop, l'ús de memòria va explotar i el lloc web va fallar.
Això no és una exageració, sinó una experiència real i dolorosa d'innombrables llocs.
Per què desactivar la cerca nativa de WordPress?
La funció de cerca integrada de WordPress és essencialment una consulta LIKE de text complet a la base de dades.
Aquesta consulta és extremadament ineficient, sobretot quan el nombre d'articles supera els 1; una sola cerca pot trigar més de 0.5 segons.
Si algú utilitza un rastrejador web o un script d'atac per enviar desenes de sol·licituds de cerca per segon, la vostra base de dades es veurà desbordada a l'instant.
Segons la documentació oficial de WordPress, la cerca nativa no té mecanismes de protecció i està completament exposada al front-end. Això significa que els atacants poden explotar aquest punt d'entrada sense ni tan sols iniciar sessió.

Solució alternativa: connectar-se a un motor de cerca més intel·ligent
Molts llocs web professionals ja no depenen de la cerca nativa de WordPress.
Per exemple, l'accés Cerca de programació de Google o Algolia Aquests serveis de cerca de tercers no només són ràpids, sinó que també proporcionen resultats més precisos.
Més important encara, aquests serveis no afectaran la vostra base de dades perquè totes les consultes es realitzen externament.
Així doncs, si el vostre lloc webPosicionamentSi es tracta d'un lloc d'eines, un lloc de blog o fins i tot un lloc que ja depèn de la cerca externa, no hi ha cap raó per continuar mantenint la funció de cerca integrada de WordPress.
Desactiva completament la implementació del codi de cerca frontal de WordPress
La manera més directa és centrar-se en el tema. functions.php Afegiu el següent codi al fitxer:
// 禁用 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' );
La lògica d'aquest codi és molt simple:
- Un cop detectada una sol·licitud de cerca en primer pla, les consultes de la base de dades es bloquegen immediatament.
- Tornar a una pàgina 404 bloqueja completament el punt d'entrada.
- Alhora, es va eliminar el formulari de cerca per evitar accions accidentals de l'usuari.
L'avantatge d'aquest mètode és que, fins i tot si un atacant fa nombroses sol·licituds... ?s=xxxNo activarà cap consulta a la base de dades.
Una implementació més elegant: utilitzar fragments de Fluent
Si no voleu modificar directament els fitxers del tema, podeu utilitzar... Fragments fluids connectar.
Aquest complement us permet afegir fragments de codi directament en segon pla i veure'n els efectes i les modificacions. functions.php Igual, però més segur.
Un cop habilitat, podeu gestionar fàcilment tot el vostre codi personalitzat sense preocupar-vos que les actualitzacions del tema el sobreescriguin.
Resultats reals de la prova: la pressió de la base de dades ha baixat bruscament.
En una configuració de CPU de 2 nuclis + 4 GB de RAM Al VPS, quan la cerca nativa feia 50 sol·licituds per segon, l'ús de la CPU de la base de dades va augmentar fins al 95%.
Després de desactivar la cerca, la mateixa sol·licitud va retornar un error 404 directament i la càrrega de la base de dades va ser gairebé zero.
És per això que molts experts en seguretat recomanen fermament desactivar la cerca nativa de WordPress immediatament si no la necessiteu.
Els investigadors de seguretat van declarar explícitament al bloc oficial de Sucuri:
"La cerca nativa de WordPress és un dels punts d'entrada més fàcils d'explotar; els atacants poden crear atacs de denegació de servei fent sol·licituds de cerca freqüents."
Aquesta afirmació és suficient per explicar el problema.
En conclusió: la seguretat no és una opció, sinó un curs obligatori.
La seguretat web no és només un avantatge, és una qüestió de vida o mort.
Desactivar la cerca nativa de WordPress pot semblar una petita acció, però pot evitar que la base de dades es vegi desbordada.
En aquesta era de sobrecàrrega d'informació, la veritable saviesa no rau en afegir funcions, sinó en descartar decisivament les que són ineficients o perilloses.
Recorda: la seguretat no és un cost, és un valor.
Si encara dubteu, pregunteu-vos això: preferiríeu deixar que la vostra base de dades s'estavelli entre les rialles dels atacants o preferiríeu prendre el control de la situació?
Bloc d'Hope Chen Weiliang ( https://www.chenweiliang.com/ L'article "Desactivació completa de la funció de cerca nativa a WordPress per evitar que l'escaneig de programes maliciosos arrossegui la base de dades", compartit aquí, us pot ser útil.
Benvingut a compartir l'enllaç d'aquest article:https://www.chenweiliang.com/cwl-34192.html
