ಲೇಖನ ಡೈರೆಕ್ಟರಿ
ವರ್ಡ್ಪ್ರೆಸ್ ಮುಂಭಾಗದಲ್ಲಿ ಸ್ಥಳೀಯ ಹುಡುಕಾಟ ಕಾರ್ಯವನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿ, ಅದು ಸ್ಕ್ಯಾನ್ ಆಗುವುದನ್ನು ಮತ್ತು ಡೇಟಾಬೇಸ್ ಕ್ರ್ಯಾಶ್ ಆಗುವುದನ್ನು ತಡೆಯಿರಿ.
ನಿಮ್ಮ ವೆಬ್ಸೈಟ್ ಹೆಚ್ಚು ವಿಷಯವನ್ನು ಹೊಂದಿರುವುದರಿಂದ ಡೇಟಾಬೇಸ್ ಕ್ರ್ಯಾಶ್ ಆಗುತ್ತಿಲ್ಲ, ಬದಲಿಗೆ ನೀವು ಇನ್ನೂ ಆ ಹಾಸ್ಯಾಸ್ಪದವಾಗಿ ಅಸಮರ್ಥವಾದ ಸ್ಥಳೀಯ ವರ್ಡ್ಪ್ರೆಸ್ ಹುಡುಕಾಟವನ್ನು ಬಳಸುತ್ತಿರುವುದರಿಂದ.
ಅನೇಕ ವೆಬ್ಸೈಟ್ ಮಾಲೀಕರು ಒಂದು ಸಂಗತಿಯನ್ನು ಕಡೆಗಣಿಸುತ್ತಾರೆ: ಮುಂಭಾಗ... ?s= ಹುಡುಕಾಟ ನಿಯತಾಂಕಗಳು ಹ್ಯಾಕರ್ಗಳು ಮತ್ತು ಸ್ಕ್ಯಾನರ್ಗಳಿಗೆ ಅಚ್ಚುಮೆಚ್ಚಿನವು.
ಯಾರಾದರೂ ಹುಡುಕಾಟ ಇಂಟರ್ಫೇಸ್ಗೆ ವಿನಂತಿಗಳನ್ನು ಮಾಡುತ್ತಲೇ ಇದ್ದರೆ, ನಿಮ್ಮ ಡೇಟಾಬೇಸ್ ಸಾವಿರಾರು ಅರ್ಥಹೀನ ಪ್ರಶ್ನೆಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು ಒತ್ತಾಯಿಸಲ್ಪಡುತ್ತದೆ.
ಫಲಿತಾಂಶ? CPU ಬಳಕೆ ಹೆಚ್ಚಾಗಿದೆ, ಮೆಮೊರಿ ಬಳಕೆ ಹೆಚ್ಚಾಗಿದೆ ಮತ್ತು ವೆಬ್ಸೈಟ್ ಕ್ರ್ಯಾಶ್ ಆಗಿದೆ.
ಇದು ಉತ್ಪ್ರೇಕ್ಷೆಯಲ್ಲ, ಆದರೆ ಲೆಕ್ಕವಿಲ್ಲದಷ್ಟು ತಾಣಗಳ ನೈಜ ಮತ್ತು ನೋವಿನ ಅನುಭವ.
ವರ್ಡ್ಪ್ರೆಸ್ ಸ್ಥಳೀಯ ಹುಡುಕಾಟವನ್ನು ಏಕೆ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಬೇಕು?
WordPress ನ ಅಂತರ್ನಿರ್ಮಿತ ಹುಡುಕಾಟ ಕಾರ್ಯವು ಮೂಲಭೂತವಾಗಿ ಡೇಟಾಬೇಸ್ನಲ್ಲಿ ಪೂರ್ಣ-ಪಠ್ಯ LIKE ಪ್ರಶ್ನೆಯಾಗಿದೆ.
ಈ ಪ್ರಶ್ನೆಯು ಅತ್ಯಂತ ನಿಷ್ಪರಿಣಾಮಕಾರಿಯಾಗಿದೆ, ವಿಶೇಷವಾಗಿ ಲೇಖನಗಳ ಸಂಖ್ಯೆ 1 ಮೀರಿದಾಗ; ಒಂದು ಹುಡುಕಾಟವು 0.5 ಸೆಕೆಂಡುಗಳಿಗಿಂತ ಹೆಚ್ಚು ಸಮಯ ತೆಗೆದುಕೊಳ್ಳಬಹುದು.
ಯಾರಾದರೂ ವೆಬ್ ಕ್ರಾಲರ್ ಅಥವಾ ಅಟ್ಯಾಕ್ ಸ್ಕ್ರಿಪ್ಟ್ ಬಳಸಿ ಸೆಕೆಂಡಿಗೆ ಡಜನ್ಗಟ್ಟಲೆ ಹುಡುಕಾಟ ವಿನಂತಿಗಳನ್ನು ಕಳುಹಿಸಿದರೆ, ನಿಮ್ಮ ಡೇಟಾಬೇಸ್ ತಕ್ಷಣವೇ ತುಂಬಿ ತುಳುಕುತ್ತದೆ.
ಅಧಿಕೃತ ವರ್ಡ್ಪ್ರೆಸ್ ದಸ್ತಾವೇಜನ್ನು ಪ್ರಕಾರ, ಸ್ಥಳೀಯ ಹುಡುಕಾಟವು ಯಾವುದೇ ರಕ್ಷಣಾ ಕಾರ್ಯವಿಧಾನಗಳನ್ನು ಹೊಂದಿಲ್ಲ ಮತ್ತು ಮುಂಭಾಗಕ್ಕೆ ಸಂಪೂರ್ಣವಾಗಿ ತೆರೆದಿರುತ್ತದೆ. ಇದರರ್ಥ ದಾಳಿಕೋರರು ಲಾಗಿನ್ ಆಗದೆಯೇ ಈ ಪ್ರವೇಶ ಬಿಂದುವನ್ನು ಬಳಸಿಕೊಳ್ಳಬಹುದು.

ಪರ್ಯಾಯ ಪರಿಹಾರ: ಚುರುಕಾದ ಹುಡುಕಾಟ ಎಂಜಿನ್ಗೆ ಸಂಪರ್ಕ ಸಾಧಿಸಿ
ಅನೇಕ ವೃತ್ತಿಪರ ವೆಬ್ಸೈಟ್ಗಳು ಇನ್ನು ಮುಂದೆ ವರ್ಡ್ಪ್ರೆಸ್ನ ಸ್ಥಳೀಯ ಹುಡುಕಾಟವನ್ನು ಅವಲಂಬಿಸಿಲ್ಲ.
ಉದಾಹರಣೆಗೆ, ಗೂಗಲ್ನ ಕೋಡಿಂಗ್ ಹುಡುಕಾಟ ಅಥವಾ ಅಲ್ಗೋಲಿಯಾದಂತಹ ಮೂರನೇ ವ್ಯಕ್ತಿಯ ಹುಡುಕಾಟ ಸೇವೆಗಳೊಂದಿಗೆ ಸಂಯೋಜಿಸುವುದರಿಂದ ವೇಗವಾದ ವೇಗವನ್ನು ಮಾತ್ರವಲ್ಲದೆ ಹೆಚ್ಚು ನಿಖರವಾದ ಫಲಿತಾಂಶಗಳನ್ನು ಸಹ ಒದಗಿಸುತ್ತದೆ.
ಇನ್ನೂ ಮುಖ್ಯವಾಗಿ, ಎಲ್ಲಾ ಪ್ರಶ್ನೆಗಳನ್ನು ಬಾಹ್ಯವಾಗಿ ನಿರ್ವಹಿಸಲಾಗಿರುವುದರಿಂದ ಈ ಸೇವೆಗಳು ನಿಮ್ಮ ಡೇಟಾಬೇಸ್ ಅನ್ನು ದುರ್ಬಲಗೊಳಿಸುವುದಿಲ್ಲ.
ಆದ್ದರಿಂದ, ನಿಮ್ಮ ವೆಬ್ಸೈಟ್ ಅನ್ನು ಟೂಲ್ ಸೈಟ್, ಬ್ಲಾಗ್ ಸೈಟ್ ಆಗಿ ಇರಿಸಿದ್ದರೆ ಅಥವಾ ಬಾಹ್ಯ ಹುಡುಕಾಟವನ್ನು ಅವಲಂಬಿಸಿದ್ದರೆ, ವರ್ಡ್ಪ್ರೆಸ್ನ ಅಂತರ್ನಿರ್ಮಿತ ಹುಡುಕಾಟ ಕಾರ್ಯವನ್ನು ಉಳಿಸಿಕೊಳ್ಳಲು ಯಾವುದೇ ಕಾರಣವಿಲ್ಲ.
ವರ್ಡ್ಪ್ರೆಸ್ ಫ್ರಂಟ್-ಎಂಡ್ ಹುಡುಕಾಟ ಕೋಡ್ ಅನುಷ್ಠಾನವನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿ
ವಿಷಯದ ಮೇಲೆ ಕೇಂದ್ರೀಕರಿಸುವುದು ಅತ್ಯಂತ ನೇರವಾದ ಮಾರ್ಗವಾಗಿದೆ. 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 CPU ಕೋರ್ಗಳು ಮತ್ತು 4GB ಮೆಮೊರಿಯೊಂದಿಗೆ ಕಾನ್ಫಿಗರ್ ಮಾಡಲಾದ VPS ನಲ್ಲಿ , ಸ್ಥಳೀಯ ಹುಡುಕಾಟವು ಪ್ರತಿ ಸೆಕೆಂಡಿಗೆ 50 ವಿನಂತಿಗಳನ್ನು ಮಾಡಿದಾಗ ಡೇಟಾಬೇಸ್ CPU ಬಳಕೆಯು 95% ಕ್ಕೆ ಏರಿತು.
ಹುಡುಕಾಟವನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿದ ನಂತರ, ಅದೇ ವಿನಂತಿಯು ನೇರವಾಗಿ 404 ದೋಷವನ್ನು ಹಿಂತಿರುಗಿಸಿತು ಮತ್ತು ಡೇಟಾಬೇಸ್ ಲೋಡ್ ಬಹುತೇಕ ಶೂನ್ಯವಾಗಿತ್ತು.
ಅದಕ್ಕಾಗಿಯೇ ಅನೇಕ ಭದ್ರತಾ ತಜ್ಞರು ನಿಮಗೆ ವರ್ಡ್ಪ್ರೆಸ್ನ ಸ್ಥಳೀಯ ಹುಡುಕಾಟದ ಅಗತ್ಯವಿಲ್ಲದಿದ್ದರೆ ಅದನ್ನು ತಕ್ಷಣವೇ ಆಫ್ ಮಾಡಲು ಬಲವಾಗಿ ಶಿಫಾರಸು ಮಾಡುತ್ತಾರೆ.
ಸುಕುರಿಯ ಅಧಿಕೃತ ಬ್ಲಾಗ್ನಲ್ಲಿ ಭದ್ರತಾ ಸಂಶೋಧಕರು ಸ್ಪಷ್ಟವಾಗಿ ಹೇಳಿದ್ದಾರೆ:
"ವರ್ಡ್ಪ್ರೆಸ್ ಸ್ಥಳೀಯ ಹುಡುಕಾಟವು ಬಳಸಿಕೊಳ್ಳಲು ಸುಲಭವಾದ ಪ್ರವೇಶ ಬಿಂದುಗಳಲ್ಲಿ ಒಂದಾಗಿದೆ; ದಾಳಿಕೋರರು ಆಗಾಗ್ಗೆ ಹುಡುಕಾಟ ವಿನಂತಿಗಳನ್ನು ಮಾಡುವ ಮೂಲಕ ಸೇವಾ ನಿರಾಕರಣೆ ದಾಳಿಗಳನ್ನು ರಚಿಸಬಹುದು."
ಸಮಸ್ಯೆಯನ್ನು ವಿವರಿಸಲು ಈ ಹೇಳಿಕೆ ಸಾಕು.
ತೀರ್ಮಾನಕ್ಕೆ: ಸುರಕ್ಷತೆಯು ಒಂದು ಆಯ್ಕೆಯಲ್ಲ, ಬದಲಾಗಿ ಕಡ್ಡಾಯ ಕೋರ್ಸ್.
ವೆಬ್ಸೈಟ್ ಭದ್ರತೆಯು ಕೇವಲ ಬೋನಸ್ ಅಲ್ಲ, ಅದು ಜೀವನ್ಮರಣದ ವಿಷಯವಾಗಿದೆ.
ವರ್ಡ್ಪ್ರೆಸ್ ನ ಸ್ಥಳೀಯ ಹುಡುಕಾಟವನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸುವುದು ಒಂದು ಸಣ್ಣ ಕ್ರಿಯೆಯಂತೆ ಕಾಣಿಸಬಹುದು, ಆದರೆ ಇದು ನಿಮ್ಮ ಡೇಟಾಬೇಸ್ ಅನ್ನು ಅತಿಯಾದ ಒತ್ತಡದಿಂದ ಉಳಿಸಬಹುದು.
ಮಾಹಿತಿಯ ಮಿತಿಮೀರಿದ ಈ ಯುಗದಲ್ಲಿ, ನಿಜವಾದ ಬುದ್ಧಿವಂತಿಕೆ ಇರುವುದು ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಸೇರಿಸುವುದರಲ್ಲಿ ಅಲ್ಲ, ಬದಲಾಗಿ ಅದಕ್ಷ ಅಥವಾ ಅಪಾಯಕಾರಿಯಾದವುಗಳನ್ನು ನಿರ್ಣಾಯಕವಾಗಿ ತ್ಯಜಿಸುವುದರಲ್ಲಿ.
ನೆನಪಿಡಿ: ಸುರಕ್ಷತೆಯು ವೆಚ್ಚವಲ್ಲ, ಅದು ಒಂದು ಮೌಲ್ಯ.
ನೀವು ಇನ್ನೂ ಹಿಂಜರಿಯುತ್ತಿದ್ದರೆ, ನಿಮ್ಮನ್ನು ಹೀಗೆ ಕೇಳಿಕೊಳ್ಳಿ: ದಾಳಿಕೋರರ ನಗುವಿನ ನಡುವೆ ನಿಮ್ಮ ಡೇಟಾಬೇಸ್ ಕ್ರ್ಯಾಶ್ ಆಗಲು ನೀವು ಬಿಡುತ್ತೀರಾ ಅಥವಾ ಪರಿಸ್ಥಿತಿಯನ್ನು ನಿಯಂತ್ರಿಸಲು ನೀವು ಬಯಸುತ್ತೀರಾ?
ಚೆನ್ ವೈಲಿಯಾಂಗ್ ಅವರ ಬ್ಲಾಗ್ನಲ್ಲಿ ( https://www.chenweiliang.com/ ) ಹಂಚಿಕೊಂಡಿರುವ "ದುರುದ್ದೇಶಪೂರಿತ ಪ್ರೋಗ್ರಾಂ ಸ್ಕ್ಯಾನಿಂಗ್ ಡೇಟಾಬೇಸ್ ಅನ್ನು ಕೆಳಗೆ ಎಳೆಯುವುದನ್ನು ತಡೆಯಲು ವರ್ಡ್ಪ್ರೆಸ್ನಲ್ಲಿ ಸ್ಥಳೀಯ ಹುಡುಕಾಟ ಕಾರ್ಯವನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸುವುದು" ಎಂಬ ಲೇಖನವು ನಿಮಗೆ ಸಹಾಯಕವಾಗಲಿದೆ ಎಂದು ಆಶಿಸುತ್ತೇವೆ.
ಈ ಲೇಖನದ ಲಿಂಕ್ ಅನ್ನು ಹಂಚಿಕೊಳ್ಳಲು ಹಿಂಜರಿಯಬೇಡಿ: https://www.chenweiliang.com/cwl-34192.html
