Чтобы расширить ответ Сандипа, у меня в журналах появилось несколько строк, которые были неправильно закодированы в bit.ly. Они хотели закодировать только URL-адрес, но после пробела поместили дескриптор твиттера и еще кое-что. Это выглядело так
? productID =26%20via%20@LFS
Обычно это не проблема, но я получаю много попыток SQL-инъекций, поэтому я перенаправляю все, что не является допустимым идентификатором, на 404. Я использовал метод preg_replace, чтобы преобразовать недопустимую строку productID в строку действительный productID.
$productID=preg_replace('/[\s]+.*/','',$productID);
Я ищу пробел в URL-адресе, а затем удаляю все после него.