ആർട്ടിക്കിൾ ഡയറക്ടറി
പൂർണ്ണമായും പ്രവർത്തനരഹിതമാക്കുക വേർഡ്പ്രൈസ് സ്കാനിംഗ് മൂലം ഡാറ്റാബേസ് അമിതമാകുന്നത് തടയാൻ ഫ്രണ്ട്-എൻഡിൽ ഒരു നേറ്റീവ് സെർച്ച് ഫംഗ്ഷൻ ഉണ്ട്.
നിങ്ങളുടെ വെബ്സൈറ്റിൽ വളരെയധികം ഉള്ളടക്കം ഉള്ളതുകൊണ്ടല്ല, മറിച്ച് നിങ്ങൾ ഇപ്പോഴും ആ പരിഹാസ്യമായ കാര്യക്ഷമമല്ലാത്ത നേറ്റീവ് വേർഡ്പ്രസ്സ് തിരയൽ ഉപയോഗിക്കുന്നതുകൊണ്ടാണ് ഡാറ്റാബേസ് ക്രാഷ് ആകുന്നത്.
പല വെബ്സൈറ്റ് ഉടമകളും ഒരു വസ്തുത അവഗണിക്കുന്നു: മുൻഭാഗം... ?s= സെർച്ച് പാരാമീറ്ററുകൾ ഹാക്കർമാരുടെയും സ്കാനറുകളുടെയും പ്രിയപ്പെട്ടതാണ്.
ആരെങ്കിലും സെർച്ച് ഇന്റർഫേസിലേക്ക് അഭ്യർത്ഥനകൾ നടത്തിയുകൊണ്ടിരിക്കുകയാണെങ്കിൽ, നിങ്ങളുടെ ഡാറ്റാബേസ് ആയിരക്കണക്കിന് അർത്ഥശൂന്യമായ ചോദ്യങ്ങൾ നടപ്പിലാക്കാൻ നിർബന്ധിതരാകും.
ഫലം? സിപിയു ഉപയോഗം കുതിച്ചുയർന്നു, മെമ്മറി ഉപയോഗം കുതിച്ചുയർന്നു, വെബ്സൈറ്റ് ക്രാഷ് ആയി.
ഇതൊരു അതിശയോക്തിയല്ല, മറിച്ച് എണ്ണമറ്റ സൈറ്റുകളുടെ യഥാർത്ഥവും വേദനാജനകവുമായ അനുഭവമാണ്.
വേർഡ്പ്രസ്സ് നേറ്റീവ് തിരയൽ പ്രവർത്തനരഹിതമാക്കുന്നത് എന്തുകൊണ്ട്?
വേർഡ്പ്രസ്സിന്റെ ബിൽറ്റ്-ഇൻ സെർച്ച് ഫംഗ്ഷൻ അടിസ്ഥാനപരമായി ഡാറ്റാബേസിലെ ഒരു പൂർണ്ണ-ടെക്സ്റ്റ് ലൈക്ക് അന്വേഷണമാണ്.
ഈ അന്വേഷണം അങ്ങേയറ്റം കാര്യക്ഷമമല്ല, പ്രത്യേകിച്ചും ലേഖനങ്ങളുടെ എണ്ണം 1 കവിയുമ്പോൾ; ഒരു തിരയലിന് 0.5 സെക്കൻഡിൽ കൂടുതൽ എടുത്തേക്കാം.
ആരെങ്കിലും ഒരു വെബ് ക്രാളറോ ആക്രമണ സ്ക്രിപ്റ്റോ ഉപയോഗിച്ച് സെക്കൻഡിൽ ഡസൻ കണക്കിന് തിരയൽ അഭ്യർത്ഥനകൾ അയയ്ക്കുകയാണെങ്കിൽ, നിങ്ങളുടെ ഡാറ്റാബേസ് തൽക്ഷണം നിറയും.
ഔദ്യോഗിക വേർഡ്പ്രസ്സ് ഡോക്യുമെന്റേഷൻ അനുസരിച്ച്, നേറ്റീവ് സെർച്ചിന് യാതൊരു സംരക്ഷണ സംവിധാനങ്ങളും ഇല്ല, കൂടാതെ ഫ്രണ്ട് എന്റിൽ പൂർണ്ണമായും തുറന്നുകിടക്കുന്നു. അതായത്, ആക്രമണകാരികൾക്ക് ലോഗിൻ ചെയ്യാതെ തന്നെ ഈ എൻട്രി പോയിന്റ് ചൂഷണം ചെയ്യാൻ കഴിയും.

ഇതര പരിഹാരം: കൂടുതൽ മികച്ച ഒരു സെർച്ച് എഞ്ചിനിലേക്ക് കണക്റ്റുചെയ്യുക
പല പ്രൊഫഷണൽ വെബ്സൈറ്റുകളും ഇനി വേർഡ്പ്രസ്സിന്റെ നേറ്റീവ് തിരയലിനെ ആശ്രയിക്കുന്നില്ല.
ഉദാഹരണത്തിന്, ആക്സസ് Google പ്രോഗ്രാമിംഗ് തിരയൽ അല്ലെങ്കിൽ അൽഗോലിയ അത്തരം മൂന്നാം കക്ഷി തിരയൽ സേവനങ്ങൾ വേഗതയുള്ളവ മാത്രമല്ല, കൂടുതൽ കൃത്യമായ ഫലങ്ങൾ നൽകുകയും ചെയ്യുന്നു.
കൂടുതൽ പ്രധാനമായി, എല്ലാ അന്വേഷണങ്ങളും ബാഹ്യമായി നടത്തുന്നതിനാൽ ഈ സേവനങ്ങൾ നിങ്ങളുടെ ഡാറ്റാബേസിനെ തകരാറിലാക്കില്ല.
അപ്പോൾ നിങ്ങളുടെ വെബ്സൈറ്റ്സ്ഥാനനിർണ്ണയംഅതൊരു ടൂൾ സൈറ്റ് ആണെങ്കിൽ, ഒരു ബ്ലോഗ് സൈറ്റ് ആണെങ്കിൽ, അല്ലെങ്കിൽ ഇതിനകം തന്നെ ബാഹ്യ തിരയലിനെ ആശ്രയിക്കുന്ന ഒരു സൈറ്റ് ആണെങ്കിൽ പോലും, 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ഇത് ഒരു ഡാറ്റാബേസ് അന്വേഷണങ്ങളെയും ട്രിഗർ ചെയ്യില്ല.
കൂടുതൽ മനോഹരമായ ഒരു നടപ്പിലാക്കൽ: ഫ്ലുവന്റ് സ്നിപ്പെറ്റുകൾ ഉപയോഗിക്കുന്നു
തീം ഫയലുകൾ നേരിട്ട് പരിഷ്ക്കരിക്കാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നില്ലെങ്കിൽ, നിങ്ങൾക്ക്... ഉപയോഗിക്കാം. ഒഴുക്കുള്ള ഭാഗങ്ങൾ പ്ലഗിൻ.
ഈ പ്ലഗിൻ നിങ്ങളെ പശ്ചാത്തലത്തിൽ നേരിട്ട് കോഡ് സ്നിപ്പെറ്റുകൾ ചേർക്കാനും ഇഫക്റ്റുകളും പരിഷ്ക്കരണങ്ങളും കാണാനും അനുവദിക്കുന്നു. functions.php അതേ, പക്ഷേ കൂടുതൽ സുരക്ഷിതം.
ഒരിക്കൽ പ്രവർത്തനക്ഷമമാക്കിയാൽ, തീം അപ്ഡേറ്റുകൾ പുനരാലേഖനം ചെയ്യുമെന്ന ആശങ്കയില്ലാതെ നിങ്ങളുടെ എല്ലാ ഇഷ്ടാനുസൃത കോഡുകളും എളുപ്പത്തിൽ നിയന്ത്രിക്കാനാകും.
യഥാർത്ഥ ഫലങ്ങൾ: ഡാറ്റാബേസ് സമ്മർദ്ദം കുത്തനെ കുറഞ്ഞു.
എന്ന കോൺഫിഗറേഷനിൽ 2-കോർ സിപിയു + 4 ജിബി റാം VPS-ൽ, നേറ്റീവ് സെർച്ച് സെക്കൻഡിൽ 50 അഭ്യർത്ഥനകൾ നടത്തിയപ്പോൾ, ഡാറ്റാബേസ് CPU ഉപയോഗം 95% ആയി വർദ്ധിച്ചു.
തിരയൽ പ്രവർത്തനരഹിതമാക്കിയതിനുശേഷം, അതേ അഭ്യർത്ഥന നേരിട്ട് 404 പിശക് നൽകി, ഡാറ്റാബേസ് ലോഡ് ഏതാണ്ട് പൂജ്യമായിരുന്നു.
അതുകൊണ്ടാണ് വേർഡ്പ്രസ്സിന്റെ നേറ്റീവ് തിരയൽ ആവശ്യമില്ലെങ്കിൽ ഉടൻ തന്നെ അത് ഓഫ് ചെയ്യാൻ പല സുരക്ഷാ വിദഗ്ധരും ശക്തമായി ശുപാർശ ചെയ്യുന്നത്.
സുകൂറിയുടെ ഔദ്യോഗിക ബ്ലോഗിൽ സുരക്ഷാ ഗവേഷകർ വ്യക്തമായി പ്രസ്താവിച്ചു:
"വേർഡ്പ്രസ്സ് നേറ്റീവ് തിരയൽ ചൂഷണം ചെയ്യാൻ ഏറ്റവും എളുപ്പമുള്ള എൻട്രി പോയിന്റുകളിൽ ഒന്നാണ്; ആക്രമണകാരികൾക്ക് ഇടയ്ക്കിടെ തിരയൽ അഭ്യർത്ഥനകൾ നടത്തി സേവന നിഷേധിക്കൽ ആക്രമണങ്ങൾ സൃഷ്ടിക്കാൻ കഴിയും."
പ്രശ്നം വിശദീകരിക്കാൻ ഈ പ്രസ്താവന മതിയാകും.
ഉപസംഹാരമായി: സുരക്ഷ ഒരു ഓപ്ഷനല്ല, മറിച്ച് നിർബന്ധിത കോഴ്സാണ്.
വെബ്സൈറ്റ് സുരക്ഷ വെറുമൊരു ബോണസ് മാത്രമല്ല, അത് ജീവിതത്തിന്റെയും മരണത്തിന്റെയും കാര്യമാണ്.
വേർഡ്പ്രസ്സിന്റെ നേറ്റീവ് തിരയൽ പ്രവർത്തനരഹിതമാക്കുന്നത് ഒരു ചെറിയ പ്രവൃത്തിയായി തോന്നുമെങ്കിലും, നിങ്ങളുടെ ഡാറ്റാബേസ് അമിതമാകുന്നതിൽ നിന്ന് ഇത് രക്ഷിക്കും.
വിവരങ്ങളുടെ അമിതഭാരം നിറഞ്ഞ ഈ യുഗത്തിൽ, യഥാർത്ഥ ജ്ഞാനം സവിശേഷതകൾ ചേർക്കുന്നതിലല്ല, മറിച്ച് കാര്യക്ഷമമല്ലാത്തതോ അപകടകരമോ ആയവയെ നിർണ്ണായകമായി ഉപേക്ഷിക്കുന്നതിലാണ്.
ഓർമ്മിക്കുക: സുരക്ഷ ഒരു ചെലവല്ല, അതൊരു മൂല്യമാണ്.
ഇപ്പോഴും നിങ്ങൾക്ക് സംശയമുണ്ടെങ്കിൽ, സ്വയം ഇങ്ങനെ ചോദിക്കുക: ആക്രമണകാരികളുടെ ചിരിക്കിടയിൽ നിങ്ങളുടെ ഡാറ്റാബേസ് തകരാറിലാകാൻ നിങ്ങൾ അനുവദിക്കുമോ, അതോ സാഹചര്യം നിയന്ത്രിക്കാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുണ്ടോ?
ഹോപ്പ് ചെൻ വെയ്ലിയാങ് ബ്ലോഗ് ( https://www.chenweiliang.com/ ഇവിടെ പങ്കുവെച്ചിരിക്കുന്ന "ഡാറ്റാബേസ് താഴേക്ക് വലിച്ചിടുന്നതിൽ നിന്ന് ക്ഷുദ്രകരമായ പ്രോഗ്രാം സ്കാനിംഗ് തടയാൻ വേർഡ്പ്രസ്സിലെ നേറ്റീവ് തിരയൽ പ്രവർത്തനം പൂർണ്ണമായും പ്രവർത്തനരഹിതമാക്കുന്നു" എന്ന ലേഖനം നിങ്ങൾക്ക് സഹായകരമായേക്കാം.
ഈ ലേഖനത്തിന്റെ ലിങ്ക് പങ്കിടാൻ സ്വാഗതം:https://www.chenweiliang.com/cwl-34192.html
