From c32773be6d1ea93c38ee69be677cbce1d581f56c Mon Sep 17 00:00:00 2001 From: Daniel Gruno Date: Tue, 31 Jul 2012 12:03:29 +0000 Subject: [PATCH] xforms git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1367512 13f79535-47bb-0310-9956-ffa450edef68 --- docs/manual/mod/mod_lua.html.en | 60 +++++++++++++++++-- docs/manual/mod/mod_lua.xml.fr | 2 +- docs/manual/mod/quickreference.html.de | 2 +- docs/manual/mod/quickreference.html.en | 2 +- docs/manual/mod/quickreference.html.es | 2 +- docs/manual/mod/quickreference.html.ja.utf8 | 2 +- docs/manual/mod/quickreference.html.ko.euc-kr | 2 +- docs/manual/mod/quickreference.html.tr.utf8 | 2 +- docs/manual/mod/quickreference.html.zh-cn | 2 +- 9 files changed, 63 insertions(+), 13 deletions(-) diff --git a/docs/manual/mod/mod_lua.html.en b/docs/manual/mod/mod_lua.html.en index 9916c32654..3e0042cfbd 100644 --- a/docs/manual/mod/mod_lua.html.en +++ b/docs/manual/mod/mod_lua.html.en @@ -537,14 +537,23 @@ end

After a lua function has been registered as authorization provider, it can be used with the Require directive:

-
+
 LuaRoot /usr/local/apache2/lua
 LuaAuthzProvider foo authz.lua authz_check_foo
 <Location />
-  Require foo bar
+  Require foo johndoe
 </Location>
 
-
+ +
+require "apache2"
+function authz_check_foo(r, who)
+    if r.user ~= who then return apache2.AUTHZ_DENIED
+    return apache2.AUTHZ_GRANTED
+end
+
+ + @@ -666,7 +675,7 @@ end
top

LuaHookFixups Directive

- @@ -699,7 +708,48 @@ processing -
Description:Provide a hook for the fixups phase of request +
Description:Provide a hook for the fixups phase of a request processing
Syntax:LuaHookFixups /path/to/lua/script.lua hook_function_name
Context:server config, virtual host, directory, .htaccess
Override:All
Status:Experimental
Module:mod_lua

...

+ +

Like LuaHookTranslateName but executed at the + map-to-storage phase of a request. Modules like mod_cache run at this phase, + which makes for an interesting example on what to do here:

+
+    LuaHookMapToStorage /path/to/lua/script.lua check_cache
+    
+ +
+require"apache2"
+cached_files = {}
+
+function read_file(filename) 
+    local input = io.open(filename, "r")
+    if input then
+        local data = input:read("*a")
+        cached_files[filename] = data
+        file = cached_files[filename]
+        input:close()
+    end
+    return cached_files[filename]
+end
+
+function check_cache(r)
+    if r.filename:match("%.png$") then -- Only match PNG files
+        local file = cached_files[r.filename] -- Check cache entries
+        if not file then
+            file = read_file(r.filename)  -- Read file into cache
+        end
+        if file then -- If file exists, write it out
+            r.status = 200
+            r:write(file)
+            r:info(("Sent %s to client from cache"):format(r.filename))
+            return apache2.DONE -- skip default handler for PNG files
+        end
+    end
+    return apache2.DECLINED -- If we had nothing to do, let others serve this.
+end
+    
+ + +
top

LuaHookTranslateName Directive

diff --git a/docs/manual/mod/mod_lua.xml.fr b/docs/manual/mod/mod_lua.xml.fr index 265967d353..4422cfa2d9 100644 --- a/docs/manual/mod/mod_lua.xml.fr +++ b/docs/manual/mod/mod_lua.xml.fr @@ -1,7 +1,7 @@ - + diff --git a/docs/manual/mod/quickreference.html.de b/docs/manual/mod/quickreference.html.de index 584c62ccf7..43c7fd8b53 100644 --- a/docs/manual/mod/quickreference.html.de +++ b/docs/manual/mod/quickreference.html.de @@ -592,7 +592,7 @@ regul LuaHookAccessChecker /path/to/lua/script.lua hook_function_name [early|late]svdhXProvide a hook for the access_checker phase of request processing LuaHookAuthChecker /path/to/lua/script.lua hook_function_name [early|late]svdhXProvide a hook for the auth_checker phase of request processing LuaHookCheckUserID /path/to/lua/script.lua hook_function_name [early|late]svdhXProvide a hook for the check_user_id phase of request processing -LuaHookFixups /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the fixups phase of request +LuaHookFixups /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the fixups phase of a request processing LuaHookInsertFilter /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the insert_filter phase of request processing LuaHookMapToStorage /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the map_to_storage phase of request processing diff --git a/docs/manual/mod/quickreference.html.en b/docs/manual/mod/quickreference.html.en index 0d84817479..cf03cc9f14 100644 --- a/docs/manual/mod/quickreference.html.en +++ b/docs/manual/mod/quickreference.html.en @@ -584,7 +584,7 @@ matching URLs LuaHookAccessChecker /path/to/lua/script.lua hook_function_name [early|late]svdhXProvide a hook for the access_checker phase of request processing LuaHookAuthChecker /path/to/lua/script.lua hook_function_name [early|late]svdhXProvide a hook for the auth_checker phase of request processing LuaHookCheckUserID /path/to/lua/script.lua hook_function_name [early|late]svdhXProvide a hook for the check_user_id phase of request processing -LuaHookFixups /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the fixups phase of request +LuaHookFixups /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the fixups phase of a request processing LuaHookInsertFilter /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the insert_filter phase of request processing LuaHookMapToStorage /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the map_to_storage phase of request processing diff --git a/docs/manual/mod/quickreference.html.es b/docs/manual/mod/quickreference.html.es index 67bf926891..798454be41 100644 --- a/docs/manual/mod/quickreference.html.es +++ b/docs/manual/mod/quickreference.html.es @@ -591,7 +591,7 @@ matching URLs LuaHookAccessChecker /path/to/lua/script.lua hook_function_name [early|late]svdhXProvide a hook for the access_checker phase of request processing LuaHookAuthChecker /path/to/lua/script.lua hook_function_name [early|late]svdhXProvide a hook for the auth_checker phase of request processing LuaHookCheckUserID /path/to/lua/script.lua hook_function_name [early|late]svdhXProvide a hook for the check_user_id phase of request processing -LuaHookFixups /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the fixups phase of request +LuaHookFixups /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the fixups phase of a request processing LuaHookInsertFilter /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the insert_filter phase of request processing LuaHookMapToStorage /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the map_to_storage phase of request processing diff --git a/docs/manual/mod/quickreference.html.ja.utf8 b/docs/manual/mod/quickreference.html.ja.utf8 index 18c5a12e87..f6d9eba3bd 100644 --- a/docs/manual/mod/quickreference.html.ja.utf8 +++ b/docs/manual/mod/quickreference.html.ja.utf8 @@ -557,7 +557,7 @@ Certificate Authority or global client certificates LuaHookAccessChecker /path/to/lua/script.lua hook_function_name [early|late]svdhXProvide a hook for the access_checker phase of request processing LuaHookAuthChecker /path/to/lua/script.lua hook_function_name [early|late]svdhXProvide a hook for the auth_checker phase of request processing LuaHookCheckUserID /path/to/lua/script.lua hook_function_name [early|late]svdhXProvide a hook for the check_user_id phase of request processing -LuaHookFixups /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the fixups phase of request +LuaHookFixups /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the fixups phase of a request processing LuaHookInsertFilter /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the insert_filter phase of request processing LuaHookMapToStorage /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the map_to_storage phase of request processing diff --git a/docs/manual/mod/quickreference.html.ko.euc-kr b/docs/manual/mod/quickreference.html.ko.euc-kr index a27e1a8683..2f87760569 100644 --- a/docs/manual/mod/quickreference.html.ko.euc-kr +++ b/docs/manual/mod/quickreference.html.ko.euc-kr @@ -554,7 +554,7 @@ matching URLs LuaHookAccessChecker /path/to/lua/script.lua hook_function_name [early|late]svdhXProvide a hook for the access_checker phase of request processing LuaHookAuthChecker /path/to/lua/script.lua hook_function_name [early|late]svdhXProvide a hook for the auth_checker phase of request processing LuaHookCheckUserID /path/to/lua/script.lua hook_function_name [early|late]svdhXProvide a hook for the check_user_id phase of request processing -LuaHookFixups /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the fixups phase of request +LuaHookFixups /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the fixups phase of a request processing LuaHookInsertFilter /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the insert_filter phase of request processing LuaHookMapToStorage /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the map_to_storage phase of request processing diff --git a/docs/manual/mod/quickreference.html.tr.utf8 b/docs/manual/mod/quickreference.html.tr.utf8 index 1ec5c40686..b8f5231f8c 100644 --- a/docs/manual/mod/quickreference.html.tr.utf8 +++ b/docs/manual/mod/quickreference.html.tr.utf8 @@ -585,7 +585,7 @@ uygulanır. LuaHookAccessChecker /path/to/lua/script.lua hook_function_name [early|late]skdhDProvide a hook for the access_checker phase of request processing LuaHookAuthChecker /path/to/lua/script.lua hook_function_name [early|late]skdhDProvide a hook for the auth_checker phase of request processing LuaHookCheckUserID /path/to/lua/script.lua hook_function_name [early|late]skdhDProvide a hook for the check_user_id phase of request processing -LuaHookFixups /path/to/lua/script.lua hook_function_nameskdhDProvide a hook for the fixups phase of request +LuaHookFixups /path/to/lua/script.lua hook_function_nameskdhDProvide a hook for the fixups phase of a request processing LuaHookInsertFilter /path/to/lua/script.lua hook_function_nameskdhDProvide a hook for the insert_filter phase of request processing LuaHookMapToStorage /path/to/lua/script.lua hook_function_nameskdhDProvide a hook for the map_to_storage phase of request processing diff --git a/docs/manual/mod/quickreference.html.zh-cn b/docs/manual/mod/quickreference.html.zh-cn index c8c7206b46..7e34a86a1b 100644 --- a/docs/manual/mod/quickreference.html.zh-cn +++ b/docs/manual/mod/quickreference.html.zh-cn @@ -579,7 +579,7 @@ matching URLs LuaHookAccessChecker /path/to/lua/script.lua hook_function_name [early|late]svdhXProvide a hook for the access_checker phase of request processing LuaHookAuthChecker /path/to/lua/script.lua hook_function_name [early|late]svdhXProvide a hook for the auth_checker phase of request processing LuaHookCheckUserID /path/to/lua/script.lua hook_function_name [early|late]svdhXProvide a hook for the check_user_id phase of request processing -LuaHookFixups /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the fixups phase of request +LuaHookFixups /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the fixups phase of a request processing LuaHookInsertFilter /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the insert_filter phase of request processing LuaHookMapToStorage /path/to/lua/script.lua hook_function_namesvdhXProvide a hook for the map_to_storage phase of request processing