=head1 NAME Apache::Constants - Constants defined in apache header files =head1 Synopsis use Apache::Constants; use Apache::Constants ':common'; use Apache::Constants ':response'; =head1 Description Server constants used by apache modules are defined in B and other header files, this module gives Perl access to those constants. =head1 Export Tags =over 4 =item common This tag imports the most commonly used constants. OK DECLINED DONE NOT_FOUND FORBIDDEN AUTH_REQUIRED SERVER_ERROR =item response This tag imports the B response codes, plus these response codes: DOCUMENT_FOLLOWS MOVED REDIRECT USE_LOCAL_COPY BAD_REQUEST BAD_GATEWAY RESPONSE_CODES NOT_IMPLEMENTED CONTINUE NOT_AUTHORITATIVE B and B are aliases for B. =item methods This are the method numbers, commonly used with the Apache B method. METHODS M_CONNECT M_DELETE M_GET M_INVALID M_OPTIONS M_POST M_PUT M_TRACE M_PATCH M_PROPFIND M_PROPPATCH M_MKCOL M_COPY M_MOVE M_LOCK M_UNLOCK =item options These constants are most commonly used with the Apache B method: OPT_NONE OPT_INDEXES OPT_INCLUDES OPT_SYM_LINKS OPT_EXECCGI OPT_UNSET OPT_INCNOEXEC OPT_SYM_OWNER OPT_MULTI OPT_ALL =item satisfy These constants are most commonly used with the Apache B method: SATISFY_ALL SATISFY_ANY SATISFY_NOSPEC =item remotehost These constants are most commonly used with the Apache B method: REMOTE_HOST REMOTE_NAME REMOTE_NOLOOKUP REMOTE_DOUBLE_REV =item http This is the full set of HTTP response codes: (NOTE: not all implemented here) HTTP_OK HTTP_MOVED_TEMPORARILY HTTP_MOVED_PERMANENTLY HTTP_METHOD_NOT_ALLOWED HTTP_NOT_MODIFIED HTTP_UNAUTHORIZED HTTP_FORBIDDEN HTTP_NOT_FOUND HTTP_BAD_REQUEST HTTP_INTERNAL_SERVER_ERROR HTTP_NOT_ACCEPTABLE HTTP_NO_CONTENT HTTP_PRECONDITION_FAILED HTTP_SERVICE_UNAVAILABLE HTTP_VARIANT_ALSO_VARIES =item server These are constants related to server version: MODULE_MAGIC_NUMBER SERVER_VERSION SERVER_BUILT =item config These are constants related to configuration directives: DECLINE_CMD =item types These are constants related to internal request types: DIR_MAGIC_TYPE =item override These constants are used to control and test the context of configuration directives. OR_NONE OR_LIMIT OR_OPTIONS OR_FILEINFO OR_AUTHCFG OR_INDEXES OR_UNSET OR_ALL ACCESS_CONF RSRC_CONF =item args_how RAW_ARGS TAKE1 TAKE2 TAKE12 TAKE3 TAKE23 TAKE123 ITERATE ITERATE2 FLAG NO_ARGS =back =head1 Warnings You should be aware of the issues relating to using constant subroutines in Perl. For example, look at this example: $r->custom_response(FORBIDDEN => "File size exceeds quota."); This will not set a custom response for C, but for the string C<"FORBIDDEN">, which clearly isn't what is expected. You'll get an error like this: [Tue Apr 23 19:46:14 2002] null: Argument "FORBIDDEN" isn't numeric in subroutine entry at ... Therefore, you can avoid this by not using the hash notation for things that don't require it. $r->custom_response(FORBIDDEN, "File size exceeds quota."); Another important note is that you should be using the correct constants defined here, and not direct HTTP codes. For example: sub handler { return 200; } Is not correct. The correct use is: use Apache::Constants qw(OK); sub handler { return OK; } Also remember that C. =head1 Maintainers Maintainer is the person(s) you should contact with updates, corrections and patches. =over =item * The L =back =head1 Authors =over =item * Doug MacEachern =item * Gisle Aas =item * h2xs =back Only the major authors are listed above. For contributors see the Changes file. =cut