<?xml version="1.0"?>
<!DOCTYPE content [ <!ENTITY nbsp " "> ]>
<rdf:RDF xml:base="http://snarfed.org/rdf"
         xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:dc="http://purl.org/dc/elements/1.1/">

<rdf:Description rdf:about="http://snarfed.org">
  <dc:title> snarfed.org  </dc:title>
  <dc:description> draw group stream of consciousness </dc:description>
  <dc:creator> Ryan Barrett &lt;snarfed at ryanb dot org&gt; </dc:creator>
  <dc:language> en </dc:language>
  <dc:format> text/html </dc:format>
  <dc:rights> Copyright 2002-2007 Ryan Barrett </dc:rights>
</rdf:Description>

<rdf:Description rdf:about="http://snarfed.org/space/filekicker">
  <dc:title> filekicker </dc:title>
  <dc:creator> Ryan Barrett &lt;snarfed at ryanb dot org&gt; </dc:creator>
  <dc:date> 2003-01-01T05:00:00Z </dc:date>
  <dc:language> en </dc:language>
  <dc:format> text/html </dc:format>
  <dc:rights> Copyright 2002-2007 Ryan Barrett </dc:rights>

  <content>
    <p><img src="/space/kick.jpg" alt="kick.jpg" title="" /></p>

<p>For the impatient: <br />
&nbsp; <a href="/space/filekicker.py">Download filekicker 0.2</a> <br />
&nbsp; <a href="http://pyblosxom.sf.net/">PyBlosxom home page</a> <br />
&nbsp; <a href="http://pyblosxom.sf.net/blog/registry?sortby=path">PyBlosxom plugin registry</a></p>

<p><a href="/space/filekicker.py">Filekicker</a> is a <a href="http://pyblosxom.sf.net/">PyBlosxom</a>
plugin that serves static files. The file to serve is determined by the URL
path and the <code>datadir</code> configuration option. The MIME type is inferred from the
file's extension.</p>

<p>For example, if <code>datadir</code> is set in <code>config.py</code> like so:</p>

<div class='p-shadow'><pre><code>py['datadir'] = '/home/ryanb/www'
</code></pre></div>

<p><br class='clearing' />and the user requests this url:</p>

<div class='p-shadow'><pre><code>http://mysite.org/videos/shovelglove.mov
</code></pre></div>

<p><br class='clearing' />filekicker will send <code>/home/ryanb/www/videos/shovelglove.mov</code> to the client,
if it exists, with the MIME type <code>video/quicktime</code>. If it doesn't exist,
filekicker will let pyblosxom handle the request.</p>

<p>Filekicker is different from, but related to, plugins such as
<a href="http://pyblosxom.sourceforge.net/blog/registry/files/pystaticfile">pystaticfile</a>,
<a href="http://pyblosxom.sourceforge.net/blog/registry/include/pyinclude">pyinclude</a>,
and
<a href="http://pyblosxom.sourceforge.net/blog/registry/display/graphics/imagekicker">imagekicker</a>.
It's basically a generalization of imagekicker, which inspired its name.</p>

<p>Filekicker is copyright 2006 <a href="/space/about">Ryan Barrett</a>, and is distributed
under the <a href="http://www.gnu.org/licenses/gpl.html">GPL</a>.</p>

<p>See also:</p>

<ul>
<li><a href="/space/pyblosxom ajax comments">pyblosxom ajax comments</a></li>
<li><a href="/space/pyblosxom rdf flavour">pyblosxom rdf flavour</a></li>
<li><a href="/space/2006-08-23">migrating to pyblosxom</a></li>
</ul>

  </content>

  <rdf:Seq>

  </rdf:Seq>
</rdf:Description>
</rdf:RDF>
