Skip to content

Commit

Permalink
2024.11.15 19:23 fba741b91 Puma master
Browse files Browse the repository at this point in the history
  • Loading branch information
MSP-Greg committed Nov 16, 2024
1 parent 05f90a6 commit 662e271
Show file tree
Hide file tree
Showing 8 changed files with 137 additions and 5 deletions.
1 change: 1 addition & 0 deletions puma/_index.html
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ <h2>File Listing</h2>
<li ><a href="file.compile_options.html" title="Compile Options">Compile Options</a></li>
<li ><a href="file.deployment.html" title="Deployment engineering for Puma">Deployment engineering for Puma</a></li>
<li ><a href="file.fork_worker.html" title="Fork-Worker Cluster Mode [Experimental]">Fork-Worker Cluster Mode [Experimental]</a></li>
<li ><a href="file.java_options.html" title="Java Options">Java Options</a></li>
<li ><a href="file.kubernetes.html" title="Kubernetes">Kubernetes</a></li>
<li ><a href="file.nginx.html" title="Nginx configuration example file">Nginx configuration example file</a></li>
<li ><a href="file.plugins.html" title="Plugins">Plugins</a></li>
Expand Down
2 changes: 1 addition & 1 deletion puma/class_list.html
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
<div id='list_footer'>
Generated by
<a href='http://yardoc.org' title='Yay! A Ruby Documentation Tool' target="_parent">yard</a>
0.9.36 with <a href='https://msp-greg.github.io/yard-t2/' title='yard-t2' target="_parent">yard-t2</a> 0.9.0 (ruby 3.4.0dev)
0.9.37 with <a href='https://msp-greg.github.io/yard-t2/' title='yard-t2' target="_parent">yard-t2</a> 0.9.0 (ruby 3.4.0dev)
</div>
<nav id='list_nav' class='y_nav l_nav'>
<ul class='class lvl0' id='list_items'>
Expand Down
2 changes: 1 addition & 1 deletion puma/constant_list.html
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
<div id='list_footer'>
Generated by
<a href='http://yardoc.org' title='Yay! A Ruby Documentation Tool' target="_parent">yard</a>
0.9.36 with <a href='https://msp-greg.github.io/yard-t2/' title='yard-t2' target="_parent">yard-t2</a> 0.9.0 (ruby 3.4.0dev)
0.9.37 with <a href='https://msp-greg.github.io/yard-t2/' title='yard-t2' target="_parent">yard-t2</a> 0.9.0 (ruby 3.4.0dev)
</div>
<nav id='list_nav' class='y_nav l_nav'>
<ul class='method' id='list_items'>
Expand Down
2 changes: 1 addition & 1 deletion puma/exception_list.html
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
<div id='list_footer'>
Generated by
<a href='http://yardoc.org' title='Yay! A Ruby Documentation Tool' target="_parent">yard</a>
0.9.36 with <a href='https://msp-greg.github.io/yard-t2/' title='yard-t2' target="_parent">yard-t2</a> 0.9.0 (ruby 3.4.0dev)
0.9.37 with <a href='https://msp-greg.github.io/yard-t2/' title='yard-t2' target="_parent">yard-t2</a> 0.9.0 (ruby 3.4.0dev)
</div>
<nav id='list_nav' class='y_nav l_nav'>
<ul class='class lvl0' id='list_items'>
Expand Down
129 changes: 129 additions & 0 deletions puma/file.java_options.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
<!DOCTYPE html>
<html>
<head>

<meta charset='UTF-8'>
<meta name='viewport' content='width=device-width, initial-scale=1.0, user-scalable=no'>
<meta name='apple-touch-fullscreen' content='yes'>
<meta name='apple-mobile-web-app-capable' content='yes'>
<meta name='apple-mobile-web-app-status-bar-style' content='rgba(228,228,228,1.0)'>

<title>File: Java Options &mdash; Puma master</title>

<link rel='stylesheet' type='text/css' href='../css/y_fonts.css' />
<link rel='stylesheet' type='text/css' href='../css/highlight.github.css' />
<link rel='stylesheet' type='text/css' href='../css/y_style.css' />
<link rel='stylesheet' type='text/css' href='../css/y_list.css' />
<link rel='stylesheet' type='text/css' href='../css/y_color.css' />

<script type='text/javascript'>
var pathId = "java_options",
relpath = '';

var t2Info = {
CSEP: '.',
ISEP: '#',
NSEP: '::'
};
</script>

<script type='text/javascript' charset='utf-8' src='../js/highlight.pack.js'></script>
<script type='text/javascript' charset='utf-8' src='../js/y_app.js'></script>

</head>
<body>
<svg id='y_wait' class viewBox='0 0 90 90'></svg>
<div id='settings' class='hidden'></div>
<div id='y_list' class='d h'>
<header id='list_header'></header>
<nav id= 'list_nav' class='y_nav l_nav'>
<ul id='list_items'></ul>
</nav>
</div>
<div id='y_toc' class='f h'>
<header id='toc_header'></header>
<nav id= 'toc_nav' class='y_nav t_nav'>
<ol id='toc_items'></ol>
</nav>
</div>
<div id='y_main' tabindex='-1'>
<header id='y_header'>
<div id='y_menu'>
<a id='home_no_xhr' href='/'>Home</a> &raquo;
<a href='.'>Puma master</a> &raquo;
<a href='_index.html'>Index</a> &raquo;
<span class='title'><a id='t2_doc_top' href='#'>File: Java Options&nbsp;&#x25B2;</a></span>
</div>

<a id='list_href' href="class_list.html"></a>
<div id='y_measure_em' class='y_measure'></div>
<div id='y_measure_vh' class='y_measure'></div>
<span id='y_measure_50pre' class='y_measure'><code>123456789_123456789_123456789_123456789_123456789_</code></span>
</header>
<div id='content' class='file'>
<h1>Java Options</h1>

<p><code>System Properties</code> or <code>Environment Variables</code> can be used to change Puma&#39;s
default configuration for its Java extension. The provided values are evaluated
during initialization, and changes while running the app have no effect.
Moreover, default values may be used in case of invalid inputs.</p>

<h2>Supported Options</h2>

<table><thead>
<tr>
<th>ENV Name</th>
<th style="text-align: center">Default Value</th>
<th style="text-align: center">Validation</th>
</tr>
</thead><tbody>
<tr>
<td>PUMA_QUERY_STRING_MAX_LENGTH</td>
<td style="text-align: center">1024 * 10</td>
<td style="text-align: center">Positive natural number</td>
</tr>
<tr>
<td>PUMA_REQUEST_PATH_MAX_LENGTH</td>
<td style="text-align: center">8192</td>
<td style="text-align: center">Positive natural number</td>
</tr>
<tr>
<td>PUMA_REQUEST_URI_MAX_LENGTH</td>
<td style="text-align: center">1024 * 12</td>
<td style="text-align: center">Positive natural number</td>
</tr>
</tbody></table>

<h2>Examples</h2>

<h3>Invalid inputs</h3>

<p>An empty string will be handled as missing, and the default value will be used instead.
<a href="Puma.html" title="Puma (module)"><code>Puma</code></a> will print an error message for other invalid values.</p>

<pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_foo'>foo</span><span class='ivar'>@bar</span><span class='op'>:</span><span class='op'>~</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>puma$ PUMA_QUERY_STRING_MAX_LENGTH=abc PUMA_REQUEST_PATH_MAX_LENGTH=&#39;&#39; PUMA_REQUEST_URI_MAX_LENGTH=0 bundle exec bin</span><span class='regexp_end'>/puma</span></span> <span class='id identifier rubyid_test'>test</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>rackup</span><span class='regexp_end'>/hello</span></span>.<span class='id identifier rubyid_ru'>ru</span>

<span class='const'>The</span> <span class='id identifier rubyid_value'>value</span> <span class='int'>0</span> <span class='kw'>for</span> <span class='const'>PUMA_REQUEST_URI_MAX_LENGTH</span> <span class='id identifier rubyid_is'>is</span> <span class='id identifier rubyid_invalid'>invalid</span>. <span class='const'>Using</span> <span class='id identifier rubyid_default'>default</span> <span class='id identifier rubyid_value'>value</span> <span class='int'>12288</span> <span class='id identifier rubyid_instead'>instead</span>.
<span class='const'>The</span> <span class='id identifier rubyid_value'>value</span> <span class='id identifier rubyid_abc'>abc</span> <span class='kw'>for</span> <span class='const'>PUMA_QUERY_STRING_MAX_LENGTH</span> <span class='id identifier rubyid_is'>is</span> <span class='id identifier rubyid_invalid'>invalid</span>. <span class='const'>Using</span> <span class='id identifier rubyid_default'>default</span> <span class='id identifier rubyid_value'>value</span> <span class='int'>10240</span> <span class='id identifier rubyid_instead'>instead</span>.
<span class='const'><a href="Puma.html" title="Puma (module)">Puma</a></span> <span class='id identifier rubyid_starting'>starting</span> <span class='kw'>in</span> <span class='id identifier rubyid_single'>single</span> <span class='id identifier rubyid_mode'>mode</span><span class='op'>...</span></code></pre>

<h3>Valid inputs</h3>

<pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_foo'>foo</span><span class='ivar'>@bar</span><span class='op'>:</span><span class='op'>~</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>puma$ PUMA_REQUEST_PATH_MAX_LENGTH=9 bundle exec bin</span><span class='regexp_end'>/puma</span></span> <span class='id identifier rubyid_test'>test</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>rackup</span><span class='regexp_end'>/hello</span></span>.<span class='id identifier rubyid_ru'>ru</span>

<span class='const'><a href="Puma.html" title="Puma (module)">Puma</a></span> <span class='id identifier rubyid_starting'>starting</span> <span class='kw'>in</span> <span class='id identifier rubyid_single'>single</span> <span class='id identifier rubyid_mode'>mode</span><span class='op'>...</span></code></pre>

<pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_foo'>foo</span><span class='ivar'>@bar</span><span class='op'>:</span><span class='op'>~</span> <span class='id identifier rubyid_export'>export</span> <span class='id identifier rubyid_path'>path</span><span class='op'>=</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>123456789 # 10 chars
foo@bar:~ curl &quot;http:</span><span class='regexp_end'>/</span></span><span class='op'>/</span><span class='id identifier rubyid_localhost'>localhost</span><span class='symbeg'>:</span><span class='int'>9292</span><span class='gvar'>$</span>{<span class='id identifier rubyid_path'>path</span>}<span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>

Puma caught this error: HTTP element REQUEST_PATH is longer than the 9 allowed length. (Puma::HttpParserError)

foo@bar:~ export path=/12345678 # 9 chars
foo@bar:~ curl </span><span class='tstring_end'>&quot;</span></span><span class='id identifier rubyid_http'>http</span><span class='symbeg'>:</span><span class='op'>/</span><span class='op'>/</span><span class='id identifier rubyid_localhost'>localhost</span><span class='symbeg'>:</span><span class='int'>9292</span><span class='gvar'>$</span>{<span class='id identifier rubyid_path'>path</span>}<span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>
Hello World</span></code></pre>

<div id='footer'></div>
</div> <!-- content -->
</div> <!-- y_main -->
</body>
</html>
3 changes: 2 additions & 1 deletion puma/file_list.html
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
<div id='list_footer'>
Generated by
<a href='http://yardoc.org' title='Yay! A Ruby Documentation Tool' target="_parent">yard</a>
0.9.36 with <a href='https://msp-greg.github.io/yard-t2/' title='yard-t2' target="_parent">yard-t2</a> 0.9.0 (ruby 3.4.0dev)
0.9.37 with <a href='https://msp-greg.github.io/yard-t2/' title='yard-t2' target="_parent">yard-t2</a> 0.9.0 (ruby 3.4.0dev)
</div>
<nav id='list_nav' class='y_nav l_nav'>
<ul class='file' id='list_items'>
Expand All @@ -41,6 +41,7 @@
<li><a href="file.compile_options.html" title="Compile Options">Compile Options</a></li>
<li><a href="file.deployment.html" title="Deployment engineering for Puma">Deployment engineering for Puma</a></li>
<li><a href="file.fork_worker.html" title="Fork-Worker Cluster Mode [Experimental]">Fork-Worker Cluster Mode [Experimental]</a></li>
<li><a href="file.java_options.html" title="Java Options">Java Options</a></li>
<li><a href="file.kubernetes.html" title="Kubernetes">Kubernetes</a></li>
<li><a href="file.nginx.html" title="Nginx configuration example file">Nginx configuration example file</a></li>
<li><a href="file.plugins.html" title="Plugins">Plugins</a></li>
Expand Down
2 changes: 1 addition & 1 deletion puma/method_list.html
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
<div id='list_footer'>
Generated by
<a href='http://yardoc.org' title='Yay! A Ruby Documentation Tool' target="_parent">yard</a>
0.9.36 with <a href='https://msp-greg.github.io/yard-t2/' title='yard-t2' target="_parent">yard-t2</a> 0.9.0 (ruby 3.4.0dev)
0.9.37 with <a href='https://msp-greg.github.io/yard-t2/' title='yard-t2' target="_parent">yard-t2</a> 0.9.0 (ruby 3.4.0dev)
</div>
<nav id='list_nav' class='y_nav l_nav'>
<ul class='method' id='list_items'>
Expand Down
1 change: 1 addition & 0 deletions puma/y_index.html
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ <h2>File Listing</h2>
<li ><a href="file.compile_options.html" title="Compile Options">Compile Options</a></li>
<li ><a href="file.deployment.html" title="Deployment engineering for Puma">Deployment engineering for Puma</a></li>
<li ><a href="file.fork_worker.html" title="Fork-Worker Cluster Mode [Experimental]">Fork-Worker Cluster Mode [Experimental]</a></li>
<li ><a href="file.java_options.html" title="Java Options">Java Options</a></li>
<li ><a href="file.kubernetes.html" title="Kubernetes">Kubernetes</a></li>
<li ><a href="file.nginx.html" title="Nginx configuration example file">Nginx configuration example file</a></li>
<li ><a href="file.plugins.html" title="Plugins">Plugins</a></li>
Expand Down

0 comments on commit 662e271

Please sign in to comment.