annotate src/http/modules/perl/nginx.pm @ 638:f5a8cf31a203 NGINX_1_1_3

nginx 1.1.3 *) Feature: the module ngx_http_mp4_module. *) Bugfix: in Linux AIO combined with open_file_cache. *) Bugfix: open_file_cache did not update file info on retest if file was not atomically changed. *) Bugfix: nginx could not be built on MacOSX 10.7.
author Igor Sysoev <http://sysoev.ru>
date Wed, 14 Sep 2011 00:00:00 +0400
parents 943566b4d82e
children eb208e0cf44d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
148
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
1 package nginx;
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
2
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
3 use 5.006001;
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
4 use strict;
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
5 use warnings;
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
6
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
7 require Exporter;
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
8
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
9 our @ISA = qw(Exporter);
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
10
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
11 our @EXPORT = qw(
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
12 OK
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
13 DECLINED
266
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
14
148
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
15 HTTP_OK
266
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
16 HTTP_CREATED
578
bc110f60c0de nginx 0.8.41
Igor Sysoev <http://sysoev.ru>
parents: 576
diff changeset
17 HTTP_ACCEPTED
266
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
18 HTTP_NO_CONTENT
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
19 HTTP_PARTIAL_CONTENT
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
20
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
21 HTTP_MOVED_PERMANENTLY
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
22 HTTP_MOVED_TEMPORARILY
148
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
23 HTTP_REDIRECT
266
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
24 HTTP_NOT_MODIFIED
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
25
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
26 HTTP_BAD_REQUEST
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
27 HTTP_UNAUTHORIZED
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
28 HTTP_PAYMENT_REQUIRED
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
29 HTTP_FORBIDDEN
148
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
30 HTTP_NOT_FOUND
266
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
31 HTTP_NOT_ALLOWED
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
32 HTTP_NOT_ACCEPTABLE
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
33 HTTP_REQUEST_TIME_OUT
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
34 HTTP_CONFLICT
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
35 HTTP_GONE
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
36 HTTP_LENGTH_REQUIRED
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
37 HTTP_REQUEST_ENTITY_TOO_LARGE
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
38 HTTP_REQUEST_URI_TOO_LARGE
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
39 HTTP_UNSUPPORTED_MEDIA_TYPE
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
40 HTTP_RANGE_NOT_SATISFIABLE
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
41
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
42 HTTP_INTERNAL_SERVER_ERROR
148
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
43 HTTP_SERVER_ERROR
266
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
44 HTTP_NOT_IMPLEMENTED
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
45 HTTP_BAD_GATEWAY
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
46 HTTP_SERVICE_UNAVAILABLE
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
47 HTTP_GATEWAY_TIME_OUT
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
48 HTTP_INSUFFICIENT_STORAGE
148
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
49 );
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
50
638
f5a8cf31a203 nginx 1.1.3
Igor Sysoev <http://sysoev.ru>
parents: 636
diff changeset
51 our $VERSION = '1.1.3';
148
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
52
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
53 require XSLoader;
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
54 XSLoader::load('nginx', $VERSION);
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
55
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
56 # Preloaded methods go here.
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
57
266
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
58 use constant OK => 0;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
59 use constant DECLINED => -5;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
60
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
61 use constant HTTP_OK => 200;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
62 use constant HTTP_CREATED => 201;
578
bc110f60c0de nginx 0.8.41
Igor Sysoev <http://sysoev.ru>
parents: 576
diff changeset
63 use constant HTTP_ACCEPTED => 202;
266
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
64 use constant HTTP_NO_CONTENT => 204;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
65 use constant HTTP_PARTIAL_CONTENT => 206;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
66
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
67 use constant HTTP_MOVED_PERMANENTLY => 301;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
68 use constant HTTP_MOVED_TEMPORARILY => 302;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
69 use constant HTTP_REDIRECT => 302;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
70 use constant HTTP_NOT_MODIFIED => 304;
148
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
71
266
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
72 use constant HTTP_BAD_REQUEST => 400;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
73 use constant HTTP_UNAUTHORIZED => 401;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
74 use constant HTTP_PAYMENT_REQUIRED => 402;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
75 use constant HTTP_FORBIDDEN => 403;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
76 use constant HTTP_NOT_FOUND => 404;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
77 use constant HTTP_NOT_ALLOWED => 405;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
78 use constant HTTP_NOT_ACCEPTABLE => 406;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
79 use constant HTTP_REQUEST_TIME_OUT => 408;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
80 use constant HTTP_CONFLICT => 409;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
81 use constant HTTP_GONE => 410;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
82 use constant HTTP_LENGTH_REQUIRED => 411;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
83 use constant HTTP_REQUEST_ENTITY_TOO_LARGE => 413;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
84 use constant HTTP_REQUEST_URI_TOO_LARGE => 414;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
85 use constant HTTP_UNSUPPORTED_MEDIA_TYPE => 415;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
86 use constant HTTP_RANGE_NOT_SATISFIABLE => 416;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
87
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
88 use constant HTTP_INTERNAL_SERVER_ERROR => 500;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
89 use constant HTTP_SERVER_ERROR => 500;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
90 use constant HTTP_NOT_IMPLEMENTED => 501;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
91 use constant HTTP_BAD_GATEWAY => 502;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
92 use constant HTTP_SERVICE_UNAVAILABLE => 503;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
93 use constant HTTP_GATEWAY_TIME_OUT => 504;
251bcd11a5b8 nginx 0.5.3
Igor Sysoev <http://sysoev.ru>
parents: 264
diff changeset
94 use constant HTTP_INSUFFICIENT_STORAGE => 507;
148
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
95
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
96
298
30862655219e nginx 0.5.19
Igor Sysoev <http://sysoev.ru>
parents: 296
diff changeset
97 sub rflush {
30862655219e nginx 0.5.19
Igor Sysoev <http://sysoev.ru>
parents: 296
diff changeset
98 my $r = shift;
30862655219e nginx 0.5.19
Igor Sysoev <http://sysoev.ru>
parents: 296
diff changeset
99
30862655219e nginx 0.5.19
Igor Sysoev <http://sysoev.ru>
parents: 296
diff changeset
100 $r->flush;
30862655219e nginx 0.5.19
Igor Sysoev <http://sysoev.ru>
parents: 296
diff changeset
101 }
30862655219e nginx 0.5.19
Igor Sysoev <http://sysoev.ru>
parents: 296
diff changeset
102
30862655219e nginx 0.5.19
Igor Sysoev <http://sysoev.ru>
parents: 296
diff changeset
103
148
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
104 1;
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
105 __END__
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
106
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
107 =head1 NAME
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
108
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
109 nginx - Perl interface to the nginx HTTP server API
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
110
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
111 =head1 SYNOPSIS
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
112
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
113 use nginx;
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
114
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
115 =head1 DESCRIPTION
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
116
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
117 This module provides a Perl interface to the nginx HTTP server API.
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
118
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
119
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
120 =head1 SEE ALSO
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
121
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
122 http://sysoev.ru/nginx/docs/http/ngx_http_perl_module.html
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
123
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
124 =head1 AUTHOR
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
125
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
126 Igor Sysoev
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
127
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
128 =head1 COPYRIGHT AND LICENSE
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
129
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
130 Copyright (C) Igor Sysoev
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
131
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
132
ea622d8acb38 nginx 0.3.21
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
133 =cut