Только HTTP 200 обычно добавляются в историю браузера. Так что, наверное, имеет смысл сделать
readyState == 4 && status == 200
Таким образом, если ваш Ajax-вызов по какой-то причине имеет ошибку 404. Он не будет добавлен в историю, как при обычном просмотре.