File: apreq_faq.html

package info (click to toggle)
libapreq2 2.17-3~bpo12%2B1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm-backports
  • size: 5,108 kB
  • sloc: ansic: 8,263; perl: 5,451; sh: 4,627; cpp: 380; makefile: 270; javascript: 186
file content (113 lines) | stat: -rw-r--r-- 6,071 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
<html>
<head>
  <link rel="stylesheet" type="text/css" href="dox.css" />
  <title>libapreq2-2.17: FAQ</title> 
</head>
<body>
<div id="page-header">
<p class="menu">
   <a href="http://www.apache.org/">Apache Software Foundation</a> &gt; <a href="http://httpd.apache.org">HTTP Server Project</a> &gt;
<a href="http://httpd.apache.org/apreq/">Request Library Subproject</a></p>
<p class="apache">Apache HTTP Server Request Library</p>
<img alt="" src="feather.gif" /></div>
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',false,false,'search.php','Search');
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div class="PageDoc"><div class="header">
  <div class="headertitle">
<div class="title">FAQ </div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock">



<ul id="index">
  <li><a href="#Issues-during-installation">Issues during installation.</a></li>
  <li><a href="#Using-libapreq2-with-Apache2-and-mod_perl2">Using libapreq2 with Apache2 and mod_perl2.</a>
    <ul>
      <li><a href="#I-keep-getting-undefined-symbol-errors-whenever-I-use-Apache2::Request-or-APR::Request::Apache2">I keep getting &quot;undefined symbol&quot; errors whenever I use Apache2::Request or APR::Request::Apache2.</a></li>
      <li><a href="#When-I-use-Apache2::Request-in-my-output-filter-it-seems-to-lose-the-incoming-POST-variables">When I use Apache2::Request in my output filter, it seems to lose the incoming POST variables.</a></li>
      <li><a href="#When-I-try-to-upload-a-file-why-do-I-get-this-error-error-Cant-locate-...-Apache2-Request-upload.al-in-INC">When I try to upload a file, why do I get this error &quot;[error] Can&#39;t locate .../Apache2/Request/upload.al in @INC&quot;?</a></li>
    </ul>
  </li>
  <li><a href="#Using-libapreq2-outside-of-Apache">Using libapreq2 outside of Apache.</a></li>
  <li><a href="#Contributing-to-apreq-development">Contributing to apreq development.</a>
    <ul>
      <li><a href="#How-is-the-subversion-repository-managed">How is the subversion repository managed?</a></li>
    </ul>
  </li>
</ul>

<h1 id="Issues-during-installation">Issues during installation.</h1>

<p>[...]</p>

<h1 id="Using-libapreq2-with-Apache2-and-mod_perl2">Using libapreq2 with Apache2 and mod_perl2.</h1>

<h2 id="I-keep-getting-undefined-symbol-errors-whenever-I-use-Apache2::Request-or-APR::Request::Apache2">I keep getting &quot;undefined symbol&quot; errors whenever I use Apache2::Request or APR::Request::Apache2.</h2>

<p>You need to load mod_apreq2.so at server startup, which grabs all the required symbols at server startup. Be sure your server config contains a line like</p>

<pre><code>LoadModule apreq_module   modules/mod_apreq2.so</code></pre>

<h2 id="When-I-use-Apache2::Request-in-my-output-filter-it-seems-to-lose-the-incoming-POST-variables">When I use Apache2::Request in my output filter, it seems to lose the incoming POST variables.</h2>

<p>The problem is likely that the mod_apreq2 filter has not been added to the input filter chain in time to read the POST data.</p>

<p>There are two solutions to this problem:</p>

<pre><code>1) Write a filter init handler for you filter that instantiates an
   Apache2::Request object. 

   http://perl.apache.org/docs/2.0/api/Apache2/Filter.html#C_FilterInitHandler_

2) Use .htaccess or your server config to ensure the apreq input filter
   is active for this request with &quot;AddInputFilter APREQ&quot; or somesuch.</code></pre>

<p>We recommend using (1), and falling back to (2) until you get (1) working.</p>

<h2 id="When-I-try-to-upload-a-file-why-do-I-get-this-error-error-Cant-locate-...-Apache2-Request-upload.al-in-INC">When I try to upload a file, why do I get this error &quot;[error] Can&#39;t locate .../Apache2/Request/upload.al in @INC&quot;?</h2>

<p><i>Apache2::Upload</i> is now a separate module in apreq2, so you need to <code>use Apache2::Upload</code> to load the <code>Apache2::Request::upload</code> function.</p>

<p>This also applies to &quot;Can&#39;t locate auto/APR/Request/Param/slurp.al in @INC&quot;. This is because <i>Apache2::Upload</i> is implement by wrapping the <i>APR::Request::*</i> packages.</p>

<h1 id="Using-libapreq2-outside-of-Apache">Using libapreq2 outside of Apache.</h1>

<p>[...]</p>

<h1 id="Contributing-to-apreq-development">Contributing to apreq development.</h1>

<h2 id="How-is-the-subversion-repository-managed">How is the subversion repository managed?</h2>

<p>apreq&#39;s repository is broken into three subdirectories:</p>

<pre><code>/trunk    - the current codebase for active development.
/tags     - release snapshots.
/branches - where older releases and experimental development lines live.</code></pre>

<p>apreq follows a Commit-then-Review policy for its entire repository, but being a shared library places certain restrictions on the admissible changes for stable trees. Basically the header files cannot be modified; only new functions and structures may be added to them. Any time that happens, the minor-version needs to be bumped, and the patch-level gets reset to zero. Changes that only modify the library&#39;s implementation (.c) files require a bump to the patch-level. On stable trees, this version tracking should happen on each commit, to make auditing easy for other developers without resorting to a draconian Review-then-Commit policy.</p>


 </div></div><!-- contents -->
</div><!-- PageDoc -->
<div id="footer">
<p class="apache">
Copyright &copy; 2003-2006 <a href="http://www.apache.org">The Apache Software Foundation</a>.<br/>
See <a href="apreq_license.html">LICENSE</a>.</p>
<p class="menu">
<span style="color:#aaa">page generated by <a href="http://www.doxygen.org/"><code>doxygen</code></a>
version 1.9.1 on Thu Aug 18 2022</span>
</p>
</div>
</body>
</html>