A 500 status code (all too often seen by Perl programmers) indicates that the server encountered something it didn't expect and was unable to complete the request.
'''501 - Not Implemented'''
The 501 status code indicates that the server does not support all that is needed for the request to be completed.
'''502 - Bad Gateway'''
A 502 status code indicates that a server, while acting as a proxy, received a response from a server further upstream that it judged invalid.
'''503 - Service Unavailable'''
A 503 status code is most often seen on extremely busy servers, and it indicates that the server was unable to complete the request due to a server overload.
'''504 - Gateway Timeout'''
A 504 status code is returned when a server acting as a proxy has waited too long for a response from a server further upstream.
'''505 - HTTP Version Not Supported'''
A 505 status code is returned when the HTTP version indicated in the request is no supported. The response should indicate which HTTP versions are supported.