<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Behind the Code &#187; cherrypy</title>
	<atom:link href="http://yinwm.com/category/cherrypy/feed/" rel="self" type="application/rss+xml" />
	<link>http://yinwm.com</link>
	<description>Just Do It</description>
	<lastBuildDate>Wed, 04 Jan 2012 03:54:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>[Cherrypy]配置设置，静态内容支持</title>
		<link>http://yinwm.com/2008/03/cherrypy%e9%85%8d%e7%bd%ae%e8%ae%be%e7%bd%ae%ef%bc%8c%e9%9d%99%e6%80%81%e5%86%85%e5%ae%b9%e6%94%af%e6%8c%81/</link>
		<comments>http://yinwm.com/2008/03/cherrypy%e9%85%8d%e7%bd%ae%e8%ae%be%e7%bd%ae%ef%bc%8c%e9%9d%99%e6%80%81%e5%86%85%e5%ae%b9%e6%94%af%e6%8c%81/#comments</comments>
		<pubDate>Fri, 14 Mar 2008 08:48:35 +0000</pubDate>
		<dc:creator>yinwm</dc:creator>
				<category><![CDATA[cherrypy]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://yinwm.cn/wordpress/?p=43</guid>
		<description><![CDATA[Cherrypy是一个很不错的python webserver，不过好东西也会让人抓狂的。Cherrypy的配置可以放在一个配置文件中，然后在启动的时候提供出文件名就可以。cherrypy.quickstart(handler, config=&#8217;/path/to/conf_file&#8217;) 我需要用到的一个功能就是要增加一个静态内容的支持，也就是当用户访问http://localhost/static的时候指向的是我的一个存放静态内容（js，css等）的目录。这个可以使用配置文件的tools.staticfile和tools.staticdir参数设置（相见Cherrypy的StaticContent章节）。但是你写在配置文件中的都需要是一个绝对路径，而我的程序是不一定安装到哪里的，所以只能后期配置。此时的配置信息是分两部分的，一部分是通用的，一部分是静态内容，需要根据当前所在目录组合起来的。 正确的写法是cherrypy.config.update(global_config)然后是cherrypy的quickstart里面的config是static的配置cherrypy.quickstart(handler, config=static_conf) 首先是把全局的配置设置在cherrypy的config中，然后在quickstart里面给出静态内容的配置。 我走了一个弯路，无法正确的使用静态内容 把所有的内容都放在一个配置信息中，使用cherrypy.config.update，在quickstart的时候不给config参数 就原因来说，我查看了一下cherrypy的源代码，他会在quickstart的时候，把config参数应用在tree的mount上，而static content的配置在此时才会起作用的。所以这样做是不行的。]]></description>
			<content:encoded><![CDATA[<p>Cherrypy是一个很不错的python webserver，不过好东西也会让人抓狂的。<br />Cherrypy的配置可以放在一个配置文件中，然后在启动的时候提供出文件名就可以。<br />cherrypy.quickstart(handler, config=&#8217;/path/to/conf_file&#8217;)</p>
<p>我需要用到的一个功能就是要增加一个静态内容的支持，也就是当用户访问http://localhost/static的时候指向的是我的一个存放静态内容（js，css等）的目录。这个可以使用配置文件的tools.staticfile和tools.staticdir参数设置（相见Cherrypy的<a href="http://cherrypy.org/wiki/StaticContent" target="_blank">StaticContent</a>章节）。但是你写在配置文件中的都需要是一个绝对路径，而我的程序是不一定安装到哪里的，所以只能后期配置。<br />此时的配置信息是分两部分的，一部分是通用的，一部分是静态内容，需要根据当前所在目录组合起来的。</p>
<p>正确的写法是<br />cherrypy.config.update(global_config)<br />然后是cherrypy的quickstart里面的config是static的配置<br />cherrypy.quickstart(handler, config=static_conf)</p>
<p>首先是把全局的配置设置在cherrypy的config中，然后在quickstart里面给出静态内容的配置。</p>
<p>我走了一个弯路，无法正确的使用静态内容
<ol>
<li>把所有的内容都放在一个配置信息中，使用cherrypy.config.update，在quickstart的时候不给config参数</li>
</ol>
<p>就原因来说，我查看了一下cherrypy的源代码，他会在quickstart的时候，把config参数应用在tree的mount上，而static content的配置在此时才会起作用的。所以这样做是不行的。</p>
]]></content:encoded>
			<wfw:commentRss>http://yinwm.com/2008/03/cherrypy%e9%85%8d%e7%bd%ae%e8%ae%be%e7%bd%ae%ef%bc%8c%e9%9d%99%e6%80%81%e5%86%85%e5%ae%b9%e6%94%af%e6%8c%81/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

