I'm new to mod_perl within the last year, so I apologize if this is a silly question.
I notice, in the getting started documentation, that I am supposed to return Apache2::Const::OK to indicate an HTTP 200 success status but when I print out the value of this constant I get 0. When I print out other values of constants from the same package they seem to have numeric values which directly correspond to their respective HTTP status codes. I realize that using the constants means that I shouldn't need to know what their actual values are. However, it strikes me as a extremely bizarre, especially when returning Apache2::Const::HTTP_OK, which does evaluate to 200, causes Apache2 to response with a canned error response page(similar to what you see when it returns a 500 error, but it does so with a 200 response code. IE: Apache will return my response body if my handler returns 0 and one of its default error pages when my handler returns 200. Why are there conflicting constants in Apache2::Cont which evaluate to different values when only one of them works correctly? I can return 200 from my handler if I register a custom_response for status 200 but this just seems wrong to me. Am I missing something? Cheers! -John