This file is indexed.

/usr/share/doc/libghc-happstack-server-doc/html/Happstack-Server-Proxy.html is in libghc-happstack-server-doc 7.4.6.2-3.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Happstack.Server.Proxy</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script src="file:///usr/share/javascript/mathjax/MathJax.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_Happstack-Server-Proxy.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Happstack-Server-Proxy.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">happstack-server-7.4.6.2: Web related tools and services.</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr><tr><th>Language</th><td>Haskell98</td></tr></table><p class="caption">Happstack.Server.Proxy</p></div><div id="description"><p class="caption">Description</p><div class="doc"><p>Support for creating a proxy or reverse-proxy server</p></div></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><a href="#v:proxyServe">proxyServe</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-IO-Class.html#t:MonadIO">MonadIO</a> m, <a href="Happstack-Server-Internal-Monads.html#t:WebMonad">WebMonad</a> <a href="Happstack-Server-Internal-Types.html#t:Response">Response</a> m, <a href="Happstack-Server-Internal-Monads.html#t:ServerMonad">ServerMonad</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad.html#t:MonadPlus">MonadPlus</a> m, <a href="Happstack-Server-Internal-Monads.html#t:FilterMonad">FilterMonad</a> <a href="Happstack-Server-Internal-Types.html#t:Response">Response</a> m) =&gt; [<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-String.html#t:String">String</a>] -&gt; m <a href="Happstack-Server-Internal-Types.html#t:Response">Response</a></li><li class="src short"><a href="#v:proxyServe-39-">proxyServe'</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-IO-Class.html#t:MonadIO">MonadIO</a> m, <a href="Happstack-Server-Internal-Monads.html#t:FilterMonad">FilterMonad</a> <a href="Happstack-Server-Internal-Types.html#t:Response">Response</a> m, <a href="Happstack-Server-Internal-Monads.html#t:WebMonad">WebMonad</a> <a href="Happstack-Server-Internal-Types.html#t:Response">Response</a> m) =&gt; <a href="Happstack-Server-Internal-Types.html#t:Request">Request</a> -&gt; m <a href="Happstack-Server-Internal-Types.html#t:Response">Response</a></li><li class="src short"><a href="#v:rproxyServe">rproxyServe</a> :: (<a href="Happstack-Server-Internal-Monads.html#t:ServerMonad">ServerMonad</a> m, <a href="Happstack-Server-Internal-Monads.html#t:WebMonad">WebMonad</a> <a href="Happstack-Server-Internal-Types.html#t:Response">Response</a> m, <a href="Happstack-Server-Internal-Monads.html#t:FilterMonad">FilterMonad</a> <a href="Happstack-Server-Internal-Types.html#t:Response">Response</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-IO-Class.html#t:MonadIO">MonadIO</a> m) =&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-String.html#t:String">String</a> -&gt; [(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-String.html#t:String">String</a>, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-String.html#t:String">String</a>)] -&gt; m <a href="Happstack-Server-Internal-Types.html#t:Response">Response</a></li><li class="src short"><a href="#v:unproxify">unproxify</a> :: <a href="Happstack-Server-Internal-Types.html#t:Request">Request</a> -&gt; <a href="Happstack-Server-Internal-Types.html#t:Request">Request</a></li><li class="src short"><a href="#v:unrproxify">unrproxify</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-String.html#t:String">String</a> -&gt; [(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-String.html#t:String">String</a>, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-String.html#t:String">String</a>)] -&gt; <a href="Happstack-Server-Internal-Types.html#t:Request">Request</a> -&gt; <a href="Happstack-Server-Internal-Types.html#t:Request">Request</a></li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a id="v:proxyServe" class="def">proxyServe</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-IO-Class.html#t:MonadIO">MonadIO</a> m, <a href="Happstack-Server-Internal-Monads.html#t:WebMonad">WebMonad</a> <a href="Happstack-Server-Internal-Types.html#t:Response">Response</a> m, <a href="Happstack-Server-Internal-Monads.html#t:ServerMonad">ServerMonad</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad.html#t:MonadPlus">MonadPlus</a> m, <a href="Happstack-Server-Internal-Monads.html#t:FilterMonad">FilterMonad</a> <a href="Happstack-Server-Internal-Types.html#t:Response">Response</a> m) =&gt; [<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-String.html#t:String">String</a>] -&gt; m <a href="Happstack-Server-Internal-Types.html#t:Response">Response</a> <a href="src/Happstack-Server-Proxy.html#proxyServe" class="link">Source</a> <a href="#v:proxyServe" class="selflink">#</a></p><div class="doc"><p><code><a href="Happstack-Server-Proxy.html#v:proxyServe">proxyServe</a></code> is for creating a part that acts as a proxy.  The
 sole argument <code>[<code><a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-String.html#t:String">String</a></code>]</code> is a list of allowed domains for
 proxying.  This matches the domain part of the request and the
 wildcard * can be used. E.g.</p><ul><li>&quot;*&quot; to match anything.</li><li>&quot;*.example.com&quot; to match anything under example.com</li><li>&quot;example.com&quot; to match just example.com</li></ul><p>TODO: annoyingly enough, this method eventually calls <code>escape</code>, so
  any headers you set won't be used, and the computation immediately
  ends.</p></div></div><div class="top"><p class="src"><a id="v:proxyServe-39-" class="def">proxyServe'</a> :: (<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-IO-Class.html#t:MonadIO">MonadIO</a> m, <a href="Happstack-Server-Internal-Monads.html#t:FilterMonad">FilterMonad</a> <a href="Happstack-Server-Internal-Types.html#t:Response">Response</a> m, <a href="Happstack-Server-Internal-Monads.html#t:WebMonad">WebMonad</a> <a href="Happstack-Server-Internal-Types.html#t:Response">Response</a> m) =&gt; <a href="Happstack-Server-Internal-Types.html#t:Request">Request</a> -&gt; m <a href="Happstack-Server-Internal-Types.html#t:Response">Response</a> <a href="src/Happstack-Server-Proxy.html#proxyServe%27" class="link">Source</a> <a href="#v:proxyServe-39-" class="selflink">#</a></p><div class="doc"><p>Take a proxy <code><a href="Happstack-Server-Internal-Types.html#t:Request">Request</a></code> and create a <code><a href="Happstack-Server-Internal-Types.html#t:Response">Response</a></code>.  Your basic proxy
 building block.  See <code><a href="Happstack-Server-Proxy.html#v:unproxify">unproxify</a></code>.</p><p>TODO: this would be more useful if it didn't call <code>escape</code>
 (e.g. it let you modify the response afterwards, or set additional
 headers)</p></div></div><div class="top"><p class="src"><a id="v:rproxyServe" class="def">rproxyServe</a> <a href="src/Happstack-Server-Proxy.html#rproxyServe" class="link">Source</a> <a href="#v:rproxyServe" class="selflink">#</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: (<a href="Happstack-Server-Internal-Monads.html#t:ServerMonad">ServerMonad</a> m, <a href="Happstack-Server-Internal-Monads.html#t:WebMonad">WebMonad</a> <a href="Happstack-Server-Internal-Types.html#t:Response">Response</a> m, <a href="Happstack-Server-Internal-Monads.html#t:FilterMonad">FilterMonad</a> <a href="Happstack-Server-Internal-Types.html#t:Response">Response</a> m, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Control-Monad-IO-Class.html#t:MonadIO">MonadIO</a> m)</td><td class="doc empty">&nbsp;</td></tr><tr><td class="src">=&gt; <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-String.html#t:String">String</a></td><td class="doc"><p>defaultHost</p></td></tr><tr><td class="src">-&gt; [(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-String.html#t:String">String</a>, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-String.html#t:String">String</a>)]</td><td class="doc"><p>map to look up hostname mappings.  For the reverse proxy</p></td></tr><tr><td class="src">-&gt; m <a href="Happstack-Server-Internal-Types.html#t:Response">Response</a></td><td class="doc"><p>the result is a <code>ServerPartT</code> that will reverse proxy for you.</p></td></tr></table></div><div class="doc"><p>This is a reverse proxy implementation.  See <code><a href="Happstack-Server-Proxy.html#v:unrproxify">unrproxify</a></code>.</p><p>TODO: this would be more useful if it didn't call <code>escape</code>, just
 like <code><a href="Happstack-Server-Proxy.html#v:proxyServe-39-">proxyServe'</a></code>.</p></div></div><div class="top"><p class="src"><a id="v:unproxify" class="def">unproxify</a> :: <a href="Happstack-Server-Internal-Types.html#t:Request">Request</a> -&gt; <a href="Happstack-Server-Internal-Types.html#t:Request">Request</a> <a href="src/Happstack-Server-Proxy.html#unproxify" class="link">Source</a> <a href="#v:unproxify" class="selflink">#</a></p></div><div class="top"><p class="src"><a id="v:unrproxify" class="def">unrproxify</a> :: <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-String.html#t:String">String</a> -&gt; [(<a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-String.html#t:String">String</a>, <a href="file:///usr/share/doc/ghc-doc/html/libraries/base-4.9.0.0/Data-String.html#t:String">String</a>)] -&gt; <a href="Happstack-Server-Internal-Types.html#t:Request">Request</a> -&gt; <a href="Happstack-Server-Internal-Types.html#t:Request">Request</a> <a href="src/Happstack-Server-Proxy.html#unrproxify" class="link">Source</a> <a href="#v:unrproxify" class="selflink">#</a></p></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.17.2</p></div></body></html>