Computer >> Máy Tính >  >> Lập trình >> PHP

Làm thế nào để phát hiện bot công cụ tìm kiếm với PHP?

Một thư mục công cụ tìm kiếm tên nhện có thể được sử dụng làm tài liệu tham khảo. Tiếp theo, $ _SERVER ['HTTP_USER_AGENT']; có thể được sử dụng để kiểm tra xem tác nhân có phải là một con nhện (bot) hay không.

Dưới đây là một ví dụ chứng minh điều tương tự -

 if (strstr (strtolower ($ _ SERVER ['HTTP_USER_AGENT']), "some_bot_name")) {// các bước khác cần được sử dụng} 

Giải thích mã - Tác nhân, cùng với tác nhân người dùng được chuyển đến hàm strtolower, đầu ra của chúng lần lượt được chuyển đến hàm strstr. Cả tác nhân người dùng và bot đều được so sánh để xem nhện có phải là bot hay không.

Một tùy chọn khác được hiển thị bên dưới -

 function _bot_detected () {return (Isset ($ _ SERVER ['HTTP_USER_AGENT']) &&preg_match ('/ bot | crawl | slurp | spider | mediapartners / i', $ _SERVER ['HTTP_USER_AGENT']);}  

Giải thích mã - Hàm preg_match giúp tìm kiếm các mẫu cụ thể trong chuỗi. Đối với hàm preg_match, tên bot được chuyển và nó được so sánh với tác nhân người dùng để phát hiện xem con nhện có phải là bot của công cụ tìm kiếm hay không.