对于一个恶意流量拦截代码,需要对于每个请求进行判断和处理。以下是一个基于PHP语言的示例:
php
复制代码
<?php
// 获取用户请求信息
$ip = $_SERVER['REMOTE_ADDR']; // 用户IP地址
$user_agent = $_SERVER['HTTP_USER_AGENT']; // 用户浏览器信息
$request_uri = $_SERVER['REQUEST_URI']; // 请求URL
// 进行恶意流量判断
if (
preg_match('/(scrapy|bot)/i', $user_agent) || // 匹配爬虫、机器人等
preg_match('/(phpmyadmin|mysql|sql)/i', $request_uri) // 匹配SQL注入等攻击
) {
// 记录日志并返回404错误页面
error_log("Blocked malicious traffic from: " . $ip . ", URI: " . $request_uri);
http_response_code(404);
include('404.html');
exit();
}
?>
这段代码首先获取了用户的IP地址、浏览器信息以及请求URL等信息,然后使用正则表达式对恶意流量进行匹配,包括爬虫、机器人、SQL注入等攻击方式。如果有恶意流量,则记录日志并返回404错误页面。