Apache::Constants - Constants defined in apache header files






Short Cuts



The Apache Software Foundation



Sister Sites



mod_perl2 User's Guide

mod_perl2 User's Guide

By Stas Bekman, Jim Brandt


Practical mod_perl

Practical mod_perl

By Stas Bekman, Eric Cholet


The mod_perl Developer's Cookbook

The mod_perl Developer's Cookbook

By Geoffrey Young, Paul Lindner, Randy Kobes


mod_perl Pocket Reference

mod_perl Pocket Reference

By Andrew Ford


Writing Apache Modules with Perl and C

Writing Apache Modules with Perl and C

By Lincoln Stein, Doug MacEachern


Embedding Perl in HTML with Mason

Embedding Perl in HTML with Mason

By Dave Rolsky, Ken Williams



Table of Contents

Synopsis

 use Apache::Constants;
 use Apache::Constants ':common';
 use Apache::Constants ':response';


TOP

Description

Server constants used by apache modules are defined in httpd.h and other header files, this module gives Perl access to those constants.



TOP

Export Tags

  • common

    This tag imports the most commonly used constants.

     OK
     DECLINED
     DONE
     NOT_FOUND
     FORBIDDEN
     AUTH_REQUIRED
     SERVER_ERROR
  • response

    This tag imports the common response codes, plus these response codes:

     DOCUMENT_FOLLOWS
     MOVED
     REDIRECT
     USE_LOCAL_COPY
     BAD_REQUEST
     BAD_GATEWAY
     RESPONSE_CODES
     NOT_IMPLEMENTED
     CONTINUE
     NOT_AUTHORITATIVE

    CONTINUE and NOT_AUTHORITATIVE are aliases for DECLINED.

  • methods

    This are the method numbers, commonly used with the Apache method_number 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
  • options

    These constants are most commonly used with the Apache allow_options method:

     OPT_NONE
     OPT_INDEXES
     OPT_INCLUDES
     OPT_SYM_LINKS
     OPT_EXECCGI
     OPT_UNSET
     OPT_INCNOEXEC
     OPT_SYM_OWNER
     OPT_MULTI
     OPT_ALL
  • satisfy

    These constants are most commonly used with the Apache satisfies method:

     SATISFY_ALL
     SATISFY_ANY
     SATISFY_NOSPEC
  • remotehost

    These constants are most commonly used with the Apache get_remote_host method:

     REMOTE_HOST
     REMOTE_NAME
     REMOTE_NOLOOKUP
     REMOTE_DOUBLE_REV
  • 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
  • server

    These are constants related to server version:

     MODULE_MAGIC_NUMBER
     SERVER_VERSION
     SERVER_BUILT
  • config

    These are constants related to configuration directives:

     DECLINE_CMD
  • types

    These are constants related to internal request types:

     DIR_MAGIC_TYPE
  • 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
  • args_how
     RAW_ARGS
     TAKE1
     TAKE2
     TAKE12
     TAKE3
     TAKE23
     TAKE123
     ITERATE
     ITERATE2
     FLAG
     NO_ARGS


TOP

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 FORBIDDEN, but for the string "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 OK != HTTP_OK.



TOP

Maintainers

Maintainer is the person(s) you should contact with updates, corrections and patches.



TOP

Authors

  • Doug MacEachern
  • Gisle Aas
  • h2xs

Only the major authors are listed above. For contributors see the Changes file.






TOP
previous page: Apache - Perl interface to the Apache server API page up: mod_perl 1.0 API next page: Apache::Options - OPT_* defines from httpd_core.h

Last modified Sat Feb 15 17:38:38 2014

Changes file

Have comments? Please send them to the modperl users mailing list.

Use of the Camel for Perl is a trademark of O'Reilly & Associates, and is used by permission.



AltStyle によって変換されたページ (->オリジナル) /