вообще по-хорошему 500-ка - это "на сервере случилась неожиданная ошибка, мы хз че с этим делать, поэтому пошел отсюдава с 500-кой"
есть набор 400-ок, который можно описать как "слышь, криворукий, мы тебя сюда не пустим, поди нафиг!"
т.е. первое - необработанная (неожиданная) ошибка на сервере
второе - клиент пришел с какой-то невалидной информацией (404 - пришел запросить то, чего нет, 405 - запросил то, что, возможно, есть, но недоступно для такого метода запроса, и пр.)