<?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>大猫の意淫网志 &#187; codex</title>
	<atom:link href="http://ooxx.me/category/codex/feed" rel="self" type="application/rss+xml" />
	<link>http://ooxx.me</link>
	<description>该网站可能含有色情内容,如未满法定年龄(八十岁),请勿入内。</description>
	<lastBuildDate>Thu, 29 Jul 2010 16:38:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>如何获取 Gravatars 头像的路径</title>
		<link>http://ooxx.me/get_avatar_src.orz</link>
		<comments>http://ooxx.me/get_avatar_src.orz#comments</comments>
		<pubDate>Thu, 29 Jul 2010 16:32:31 +0000</pubDate>
		<dc:creator>bigCat</dc:creator>
				<category><![CDATA[codex]]></category>
		<category><![CDATA[gravatars]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://ooxx.me/?p=1576</guid>
		<description><![CDATA[什么是 Gravatar Gravatar 是 Globally Recognized Avatars (地球人公认的阿凡达) 可以去 http://gravatar.com/ 关联你的 Email 和头像 这样子在任何启用 Gravatar 的博客留言,即可显示对应的头像 例如 i(a)ooxx.me 对应的是 Gravatar 是如何构建滴 一个 Gravatar 是服务器动态返回的图片,下面是一坨 src 图片地址 http://www.gravatar.com/avatar/ddb61c44b09ee3e8cb2700249ec9eac7&#38;r=X&#38;s=80 我们来肢解一下 Gravatar 总是以如下URL开头 http://www.gravatar.com/avatar/ 接下去是 E-mail 对应的 Hash 结果, 这 E-mail 地址在 hash 之前必须要小写,并且要木有空格 ddb61c44b09ee3e8cb2700249ec9eac7 然后是 rating 分级, 有[ G &#124; PG &#124; R &#124; X ] 4档 [...]]]></description>
			<content:encoded><![CDATA[<h2>什么是 Gravatar</h2>
<p>Gravatar 是 Globally Recognized Avatars (地球人公认的阿凡达)<br />
可以去 <a href="http://gravatar.com/" target="_blank">http://gravatar.com/</a> 关联你的 Email 和头像<br />
这样子在任何启用 Gravatar 的博客留言,即可显示对应的头像<br />
例如 i(a)ooxx.me 对应的是 <img src="http://1.gravatar.com/avatar/ddb61c44b09ee3e8cb2700249ec9eac7?s=80&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D80&amp;r=G" alt="bigCat" /></p>
<h2>Gravatar 是如何构建滴</h2>
<p>一个 Gravatar 是服务器动态返回的图片,下面是一坨 src 图片地址</p>
<pre><code>http://www.gravatar.com/avatar/ddb61c44b09ee3e8cb2700249ec9eac7&amp;r=X&amp;s=80</code></pre>
<p>我们来肢解一下</p>
<p>Gravatar 总是以如下URL开头</p>
<pre><code>http://www.gravatar.com/avatar/</code></pre>
<p>接下去是 E-mail 对应的 Hash 结果, 这 E-mail 地址在 hash 之前<strong>必须</strong>要小写,并且要<strong>木有空格</strong></p>
<pre><code>ddb61c44b09ee3e8cb2700249ec9eac7</code></pre>
<p>然后是 rating 分级, 有[ G | PG | R | X ] 4档<br />
(在网站设置头像的时候会让你分级,建议选G)<br />
约X的头像越不和谐,用专业的英语就叫 hardcore sexual<br />
网址里这个分级设置的是容许最极端的那档<br />
例如网址设置容许G,那么只有G的头像会显示<br />
容许PG 会显示 G 和 PG<br />
容许X 会显示 G 和 PG 和 R 和 X</p>
<pre><code>&amp;r=X</code></pre>
<p>最后是 size 图像尺寸 , 有效范围是1到512</p>
<pre><code>&amp;s=80</code></pre>
<p>还有一坨<strong>可选</strong>的默认头像地址,就是说如果email找不到对应的头像了或者不在分级范围内,就用这张默认图<br />
可选参数为<br />
*  '404' (返回 a 404)<br />
* 'mm' (mysteryman)<br />
* 'identicon' (unique, generated image)<br />
* 'monsterid' (unique, generated image)<br />
* 'wavatar' (unique, generated image)<br />
都是些奇形怪状的丑图,建议自定义一张拉轰的(http://ooxx.me/me.jpg)</p>
<pre><code>&amp;d=http%3A%2F%2Fooxx.me%2Fme.jpg</code></pre>
<p>那么在主题里调用 Gravatar 就很简单的用</p>
<pre><code> &lt;?php
   echo get_avatar(i@ooxx.me,50);
   ?&gt;
</code></pre>
<p>这里的邮件地址可以用 get_the_author_meta('user_email') 获取本文作者的email<br />
如果用在评论循环里,可以用 get_comment_author_email() 获取当前循环里的email<br />
记得小写哦 strtolower(get_comment_author_email()) 会自动转为小写<br />
记得MD5哦 md5(strtolower(get_comment_author_email())) 会进行 hash</p>
<p>加起来就是</p>
<pre><code> &lt;?php
   echo get_avatar(md5(strtolower(get_comment_author_email())),50);
   ?&gt;
</code></pre>
<p>会吐出来</p>
<pre><code>&lt;img alt='{$safe_alt}' src='{$out}' class='avatar avatar-{$size} photo' height='{$size}' width='{$size}' /&gt;</code></pre>
<p>不幸的是get_avatar()默认吐img标签<br />
幸运的是如果只要src值,可以这么写</p>
<pre><code>&lt;?php
echo "http://www.gravatar.com/avatar/".md5(strtolower(get_comment_author_email()))."&amp;r=X&amp;s=80";
?&gt;
</code></pre>
<p>挨吻老湿就是这么写再结合<a href="http://ooxx.me/css3-rounded-image-with-jquery.orz">jQuery 配合 CSS3 搞图片圆角</a>来输出头像滴<br />
<a href="http://blog.ivane.net/archives/315#comment-12290" target="_blank">点这里看</a></p>
<h3  class="related_post_title">暧昧贴</h3><ul class="related_post"><li><a href="http://ooxx.me/wordpress25-and-gravatars.orz" title="如何让主题支持WordPress 2.5的Gravatars">如何让主题支持WordPress 2.5的Gravatars</a> (37)</li><li><a href="http://ooxx.me/ooxx_nav.orz" title="不用插件实现 WP-PageNavi 功能(进阶版)">不用插件实现 WP-PageNavi 功能(进阶版)</a> (44)</li><li><a href="http://ooxx.me/headers-already-sent-error.orz" title="Permalink Redirect失效 Headers already sent 错误">Permalink Redirect失效 Headers already sent 错误</a> (33)</li><li><a href="http://ooxx.me/is_home.orz" title="&lt;?php  if ( is_home() ) { ?&gt;无效/失效的解决方案">&lt;?php  if ( is_home() ) { ?&gt;无效/失效的解决方案</a> (23)</li><li><a href="http://ooxx.me/how-to-remove-categories-from-the_category-function-in-wordpress.orz" title="如何在wordpress the_category() 函数生成的分类列表里移除指定分类名链接">如何在wordpress the_category() 函数生成的分类列表里移除指定分类名链接</a> (37)</li></ul><hr />
<p><small>  2010. |
<a href="http://ooxx.me/get_avatar_src.orz">Permalink</a> |
<a href="http://ooxx.me/get_avatar_src.orz#comments">大战19回合</a> |
Post tags: <a href="http://ooxx.me/tag/gravatars" rel="tag">gravatars</a>, <a href="http://ooxx.me/tag/wordpress" rel="tag">wordpress</a> |
<strong><a href="http://miao.in">MediaTemple | (miao) 低调滴华丽主机</a></strong>
</small></p>]]></content:encoded>
			<wfw:commentRss>http://ooxx.me/get_avatar_src.orz/feed</wfw:commentRss>
		<slash:comments>19</slash:comments>
		</item>
		<item>
		<title>不用插件实现 WP-PageNavi 功能(进阶版)</title>
		<link>http://ooxx.me/ooxx_nav.orz</link>
		<comments>http://ooxx.me/ooxx_nav.orz#comments</comments>
		<pubDate>Sun, 18 Jul 2010 05:26:57 +0000</pubDate>
		<dc:creator>bigCat</dc:creator>
				<category><![CDATA[codex]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[nav]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://ooxx.me/?p=1573</guid>
		<description><![CDATA[开始本文之前请先阅读 WordPress 技巧：不用插件实现 Pagenavi 功能 接着是一坨广告：如果有企业要建站，推荐凶器 WP Jam 然后开始正文： 根据先阅读的那篇文章，教偶们如何用 wordpress 自带函数实现 pagenavi 功能 整完后输出的就是12344567的数字了 但还木有实现 pagenavi 的表现,也木有 左边那坨当前页面/总页面指示数 这就是为啥要写这篇文章的原因了 pagenav的缺点：多一个外挂样式表 一个http 请求是非常占速度的，可参考yslow说明书 以插件形式载入，虽然灵活，但以性能为代价 因为水煮鱼已经介绍过了，我直接就说修改的地方了，输出结果可以参考截图 第一步：在 functions.php 的 &#60;?php 和 ?&#62; 之间插入 function ooxx_nav(){ global $wp_query, $wp_rewrite; $wp_query-&#62;query_vars['paged'] &#62; 1 ? $current = $wp_query-&#62;query_vars['paged'] : $current = 1; $pagination = array( 'base' =&#62; @add_query_arg('paged','%#%'), 'format' [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-1574" title="ooxx_nav" src="http://ooxx.me/wp-content/uploads/2010/07/ooxx_nav.jpg" alt="" width="668" height="464" /></p>
<p>开始本文之前请先阅读 <a href="http://fairyfish.net/2010/07/17/native-pagenavi/" target="_blank">WordPress 技巧：不用插件实现 Pagenavi 功能</a></p>
<p>接着是一坨广告：如果有<strong>企业要建站</strong>，推荐<a href="http://fairyfish.net/2010/02/26/wordpress-jam/" target="_blank">凶器 WP Jam</a></p>
<p>然后开始正文：</p>
<p>根据先阅读的那篇文章，教偶们如何用 wordpress 自带函数实现 pagenavi 功能<br />
整完后输出的就是12344567的数字了</p>
<p>但还木有实现 pagenavi 的表现,也木有 左边那坨当前页面/总页面指示数<br />
这就是为啥要写这篇文章的原因了</p>
<p>pagenav的缺点：多一个外挂样式表 一个http 请求是非常占速度的，可参考yslow说明书<br />
以插件形式载入，虽然灵活，但以性能为代价</p>
<p>因为水煮鱼已经介绍过了，我直接就说修改的地方了，输出结果可以参考截图</p>
<p><strong>第一步：在 functions.php 的 &lt;?php 和 ?&gt; 之间插入</strong></p>
<pre><code>
function ooxx_nav(){
global $wp_query, $wp_rewrite;
$wp_query-&gt;query_vars['paged'] &gt; 1 ? $current = $wp_query-&gt;query_vars['paged'] : $current = 1;

$pagination = array(
'base' =&gt; @add_query_arg('paged','%#%'),
'format' =&gt; '',
'total' =&gt; $wp_query-&gt;max_num_pages,
'current' =&gt; $current,
'prev_text' =&gt; '&amp;laquo; ',
'next_text' =&gt; ' &amp;raquo;'
);

if( $wp_rewrite-&gt;using_permalinks() )
$pagination['base'] = user_trailingslashit( trailingslashit( remove_query_arg('s',get_pagenum_link(1) ) ) . 'page/%#%/', 'paged');

if( !empty($wp_query-&gt;query_vars['s']) )
$pagination['add_args'] = array('s'=&gt;get_query_var('s'));

echo '&lt;div class="ooxx_nav"&gt;&lt;span class="page-numbers pages"&gt;Page'.$pagination[current].' of '.$pagination[total].'&lt;/span&gt;'.paginate_links($pagination).'&lt;/div&gt;';
}
</code></pre>
<p><strong>第二步： 在 style.css 里插入</strong></p>
<pre><code>
.ooxx_nav{clear:both;margin:5px -2px;overflow:hidden;zoom:1;text-align:center;}
.ooxx_nav .page-numbers:hover{background:#FF3D86;color:#FFF;-moz-box-shadow:1px 1px 1px #DDD;-webkit-box-shadow:1px 1px 1px #DDD;box-shadow:1px 1px 1px #DDD;}
.ooxx_nav .page-numbers,
.ooxx_nav .dots:hover,
.ooxx_nav .pages:hover{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;background:#FFF;display:inline-block;float:left;height:18px;margin:2px;min-width:28px;_width:28px;padding:1px;}
.ooxx_nav .page-numbers:visited{opacity:0.5;}
.ooxx_nav .current,
.ooxx_nav .current:hover{background:#7BAFA7;color:#FFF;font-weight:bold;-moz-box-shadow:1px 1px 1px #DDD;-webkit-box-shadow:1px 1px 1px #DDD;box-shadow:1px 1px 1px #DDD;}
.ooxx_nav .pages,
.ooxx_nav .pages:hover{color:#CCC;width:120px;}
</code></pre>
<p><strong>第三步： 在需要导航的适当位置，例如index.php search.php 里插入</strong></p>
<pre><code>
&lt;?php if(function_exists('ooxx_nav')) {ooxx_nav(); } ?&gt;
</code></pre>
<p>要直接用的拷贝上头代码直接用即可，听解释的继续看</p>
<p>第一步里 function ooxx_nav() 作用就是新建一个输出页码的函数，名字随便来，当然调用的时候要对上<br />
这里改动不大</p>
<p>1. 基于语义考虑&lt;p /&gt;标签改为&lt;div /&gt;，当然最好改成&lt;nav /&gt;如果你已经createElement的话，哈<br />
2. 调用变量 $pagination 数组里的当前页和总页数组重新合成左侧那坨功能<br />
3. 左箭头和右箭头用字符实体标示一下更规范</p>
<p>第二步里 你可以根据自己的主题修改颜色<br />
box-shadow 为页码数投影<br />
border-radius 为圆角程度<br />
-moz- firefox 私有<br />
-webkit- chrome safari qq浏览器 maxthon 等webkit内核私有<br />
不细说，有需求留言即可</p>
<p>第三步加入 function_exists() 判断 ooxx_nav() 是否存在，要是不存在也没关系<br />
如果不加判断，天会塌下来</p>
<p>--update--</p>
<p>感谢 <a href="http://www.devilalbum.com/" target="_blank">yun77op</a> 找茬<br />
<code><br />
'base' => @add_query_arg('page','%#%'),<br />
应改为<br />
'base' => @add_query_arg('paged','%#%')<br />
</code><br />
少了个d,非permalinks固定连接的同学会链接失效</p>
<h3  class="related_post_title">暧昧贴</h3><ul class="related_post"><li><a href="http://ooxx.me/how-to-remove-categories-from-the_category-function-in-wordpress.orz" title="如何在wordpress the_category() 函数生成的分类列表里移除指定分类名链接">如何在wordpress the_category() 函数生成的分类列表里移除指定分类名链接</a> (37)</li><li><a href="http://ooxx.me/get_avatar_src.orz" title="如何获取 Gravatars 头像的路径">如何获取 Gravatars 头像的路径</a> (19)</li><li><a href="http://ooxx.me/headers-already-sent-error.orz" title="Permalink Redirect失效 Headers already sent 错误">Permalink Redirect失效 Headers already sent 错误</a> (33)</li><li><a href="http://ooxx.me/is_home.orz" title="&lt;?php  if ( is_home() ) { ?&gt;无效/失效的解决方案">&lt;?php  if ( is_home() ) { ?&gt;无效/失效的解决方案</a> (23)</li><li><a href="http://ooxx.me/connection-information.orz" title="为何Wordpress需要连接信息">为何Wordpress需要连接信息</a> (17)</li></ul><hr />
<p><small>  2010. |
<a href="http://ooxx.me/ooxx_nav.orz">Permalink</a> |
<a href="http://ooxx.me/ooxx_nav.orz#comments">大战44回合</a> |
Post tags: <a href="http://ooxx.me/tag/hack" rel="tag">hack</a>, <a href="http://ooxx.me/tag/nav" rel="tag">nav</a>, <a href="http://ooxx.me/tag/wordpress" rel="tag">wordpress</a> |
<strong><a href="http://miao.in">MediaTemple | (miao) 低调滴华丽主机</a></strong>
</small></p>]]></content:encoded>
			<wfw:commentRss>http://ooxx.me/ooxx_nav.orz/feed</wfw:commentRss>
		<slash:comments>44</slash:comments>
		</item>
		<item>
		<title>jQuery 配合 CSS3 搞图片圆角</title>
		<link>http://ooxx.me/css3-rounded-image-with-jquery.orz</link>
		<comments>http://ooxx.me/css3-rounded-image-with-jquery.orz#comments</comments>
		<pubDate>Thu, 08 Jul 2010 10:18:14 +0000</pubDate>
		<dc:creator>bigCat</dc:creator>
				<category><![CDATA[codex]]></category>
		<category><![CDATA[border-radius]]></category>
		<category><![CDATA[box-shadow]]></category>
		<category><![CDATA[css3]]></category>
		<category><![CDATA[jquery]]></category>

		<guid isPermaLink="false">http://ooxx.me/?p=1562</guid>
		<description><![CDATA[挨吻老湿分享了一坨圆角图像的另类实现方式文章 CSS3 Rounded Image With jQuery 很赞,翻译了下记录一把 开始之前,可以先把 Demo 点开对照着看 目标 目标是用 CSS3 border-radius 和 box-shadow 来实现如下图效果 左手: 圆角+外投影 你的右手旁边是我的左手: 圆角+内投影 问题 问题是这年头木有一档浏览器可以完美的在图片上应用圆角和阴影 webkit 可以显示圆角,但木有内投影 firefox 和内裤被戳破一样还坚挺的直着 CSS 淫技 灰常简单: 在图片外头套一层超薄&#60;span /&#62;然后把原图作为 background-image. 要隐藏原图的话,可以 opacity:0 或 display:none 偶发现 opacity 更淫荡点,因为这么整用户还能图片另存为 当然出于某些阴暗目的或光明磊落隐私考虑,可能会偏向 display 最终用 jQuery 的解决方案 本着怎么偷懒怎么来的原则,我们用 jQuery 来自动给图片套&#60;span /&#62; 不解释, 上代码先 &#60;script type="text/javascript" src="jquery-1.4.2.min.js"&#62;&#60;/script&#62; &#60;script [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-1563" title="border-radius_box-shadow_jquery" src="http://ooxx.me/wp-content/uploads/2010/07/border-radius_box-shadow.jpg" alt="" width="657" height="185" /></p>
<p><a href="http://ivane.net" target="_blank">挨吻</a>老湿分享了一坨圆角图像的另类实现方式文章 <a href="http://www.webdesignerwall.com/tutorials/css3-rounded-image-with-jquery/" target="_blank">CSS3 Rounded Image With jQuery</a></p>
<p>很赞,翻译了下记录一把</p>
<p>开始之前,可以先把 <a href="http://www.webdesignerwall.com/demo/jquery-css3-rounded-img/" target="_blank">Demo</a> 点开对照着看</p>
<p><strong>目标</strong></p>
<p>目标是用 CSS3 border-radius 和 box-shadow 来实现如下图效果</p>
<p><img class="alignnone size-full wp-image-1564" title="sample-rounded-images" src="http://ooxx.me/wp-content/uploads/2010/07/sample-rounded-images.gif" alt="" width="470" height="120" /></p>
<p>左手: 圆角+外投影<br />
你的右手旁边是我的左手: 圆角+内投影</p>
<p><strong>问题</strong><br />
问题是这年头木有一档浏览器可以完美的在图片上应用圆角和阴影<br />
webkit 可以显示圆角,但木有内投影<br />
firefox 和内裤被戳破一样还坚挺的直着</p>
<p><img class="alignnone size-full wp-image-1565" title="display-problems" src="http://ooxx.me/wp-content/uploads/2010/07/display-problems.png" alt="" width="470" height="234" /></p>
<p><strong>CSS 淫技</strong></p>
<p>灰常简单: 在图片外头套一层超薄&lt;span /&gt;然后把原图作为 background-image.<br />
要隐藏原图的话,可以 opacity:0 或 display:none<br />
偶发现 opacity 更淫荡点,因为这么整用户还能图片另存为<br />
当然出于某些阴暗目的或光明磊落隐私考虑,可能会偏向 display</p>
<p><img class="alignnone size-full wp-image-1566" title="css-background-img-trick" src="http://ooxx.me/wp-content/uploads/2010/07/css-background-img-trick.gif" alt="" width="470" height="140" /></p>
<p><strong>最终用 jQuery 的解决方案</strong></p>
<p>本着怎么偷懒怎么来的原则,我们用 jQuery 来自动给图片套&lt;span /&gt;</p>
<p><img class="alignnone size-full wp-image-1567" title="jquery-wrap" src="http://ooxx.me/wp-content/uploads/2010/07/jquery-wrap.gif" alt="" width="470" height="66" /></p>
<p>不解释, 上代码先</p>
<pre><code>&lt;script type="text/javascript" src="jquery-1.4.2.min.js"&gt;&lt;/script&gt;
&lt;script type="text/javascript"&gt;
$(document).ready(function(){

  $(".rounded-img, .rounded-img2").load(function() {
    $(this).wrap(function(){
      return '&lt;span class="' + $(this).attr('class') + '" style="background:url(' + $(this).attr('src') + ') no-repeat center center; width: ' + $(this).width() + 'px; height: ' + $(this).height() + 'px;" /&gt;';
    });
    $(this).css("opacity","0");
  });

});

&lt;/script&gt;

</code></pre>
<p>接下来开始解释<br />
1. 调用 jQuery 库<br />
2. ready 就是 DOM 全部加载后再触发的事件, 否则一旦有图片的 DOM 节点后于 JS 加载,就会绑定不到<br />
3. $(".rounded-img, .rounded-img2") 选中所有 class 名为 rounded-img 和 rounded-img2 的元素<br />
4. 给俩元素集绑定 load 事件 (偶很疑惑为何这么写)<br />
5. 在每个图片外面包含一个 span, 这个 span 的 class 为原元素的 class ,这个 span 的 style 里的 background 取值自原图的 src 值, 宽高同理<br />
6. 给每个图片写个style="opacity:0"</p>
<p><strong>看起来素酱紫滴:</strong></p>
<p><img title="sample-usages" src="http://ooxx.me/wp-content/uploads/2010/07/sample-usages.gif" alt="" width="470" height="234" /></p>
<p><strong>大猫的调整</strong></p>
<pre><code>$(function(){
  $(".avatar").wrap(function(){
      return '&lt;span class="' + $(this).attr('class') + '" style="background:url(' + $(this).attr('src') + ') no-repeat center center; width: ' + $(this).width() + 'px; height: ' + $(this).height() + 'px;" /&gt;';
    }).css("opacity","0");
});
</code></pre>
<p><strong>理由:</strong><br />
1. $(document).ready(function(){}) 相当于 $().ready(function(){}) 相当于 $(function(){}) ,貌似有这么一说,嘻嘻<br />
2. class名改为 .avatar 如果你是 wordpress 的评论头像, 都封装好了,要改结构也不是很方便,哈<br />
3. 去掉图片的 .load 事件, 因为如果图片从缓存中获取, 有可能就不会触发这个事件, 反正是 DOM ready,霸王硬上弓了<br />
4. 直接用链式写法点花点月点秋香</p>
<p>然后你得在你的主题 style.css 加上那么几条<br />
因为 webkit 的内阴影配合圆角就是一坨屎,所以我用外阴影了<br />
iPhone 的safari 还不支持 inset 内阴影, 如果有内阴影控, 可以用线性渐变配合RGBA假装是阴影...</p>
<pre><code>
.avatar {
	display: inline-block;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, .4);
	-moz-box-shadow: 0 1px 3px rgba(0, 0, 0, .4);
	box-shadow: 0 1px 3px rgba(0, 0, 0, .4);
}
</code></pre>
<p><strong>IE 呢?</strong><br />
screw you!</p>
<p>不过目前偶是弄个中间镂空PNG遮罩,多一个请求<br />
要是平滑那还得PNG32<br />
要是PNG32那IE6捏?<br />
IE6用 AlphaImageLoader 滤镜一旦图片加载失败,整个页面就脱光了死给你看</p>
<p>screw IE!</p>
<p><strong>Opera</strong><br />
这孩子长得漂亮,龙飞(dragonfly)也不错 就是没有用的欲望<br />
10.x之后不用-o-了直接支持圆角阴影,值得鼓励</p>
<h3  class="related_post_title">暧昧贴</h3><ul class="related_post"><li><a href="http://ooxx.me/jquery-ajax-abort.orz" title="jQuery $.ajax .abort()">jQuery $.ajax .abort()</a> (29)</li><li><a href="http://ooxx.me/jquery-api-online.orz" title="一分钟建立 jQuery API 在线手册站">一分钟建立 jQuery API 在线手册站</a> (18)</li><li><a href="http://ooxx.me/make-loading-effect.orz" title="(无修正)给页面加Loading">(无修正)给页面加Loading</a> (90)</li></ul><hr />
<p><small>  2010. |
<a href="http://ooxx.me/css3-rounded-image-with-jquery.orz">Permalink</a> |
<a href="http://ooxx.me/css3-rounded-image-with-jquery.orz#comments">大战62回合</a> |
Post tags: <a href="http://ooxx.me/tag/border-radius" rel="tag">border-radius</a>, <a href="http://ooxx.me/tag/box-shadow" rel="tag">box-shadow</a>, <a href="http://ooxx.me/tag/css3" rel="tag">css3</a>, <a href="http://ooxx.me/tag/jquery" rel="tag">jquery</a> |
<strong><a href="http://miao.in">MediaTemple | (miao) 低调滴华丽主机</a></strong>
</small></p>]]></content:encoded>
			<wfw:commentRss>http://ooxx.me/css3-rounded-image-with-jquery.orz/feed</wfw:commentRss>
		<slash:comments>62</slash:comments>
		</item>
		<item>
		<title>IE8 标准模式 max-width bug 求解</title>
		<link>http://ooxx.me/ie8-max-width-bug.orz</link>
		<comments>http://ooxx.me/ie8-max-width-bug.orz#comments</comments>
		<pubDate>Tue, 29 Jun 2010 14:48:19 +0000</pubDate>
		<dc:creator>bigCat</dc:creator>
				<category><![CDATA[codex]]></category>
		<category><![CDATA[bug]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[ie8]]></category>
		<category><![CDATA[max-width]]></category>

		<guid isPermaLink="false">http://ooxx.me/?p=1560</guid>
		<description><![CDATA[今天遇到一挺郁闷的bug IE8 标准模式 要实现如图的效果,图片宽度最大100px,小于100就自适应, 右边文字围绕左边的图 症状: 图片外容器宽度还是取决于图片原始大小而非max-width定义的大小 测试可跑如下代码 &#60;!DOCTYPE html&#62;&#60;html&#62;&#60;body&#62;&#60;div style="background:#2CA0B7;float:left;"&#62;&#60;img src="http://ooxx.me/me.jpg" style="max-width:50px;" /&#62;&#60;/div&#62;&#60;/body&#62;&#60;/html&#62; 也可以看DEMO页 http://code.sh/lab/demo/bug_ie8_max-width.html 哪位大湿有无解决方案? 暧昧贴&#60;?php if ( is_home() ) { ?&#62;无效/失效的解决方案 (23)Wordpress 2.8 主题编辑器 bug (29)(无修正)给页面加Loading (90)没听说过的CSS优先级 (38)修改wordpress默认表情 (37) 2010. &#124; Permalink &#124; 大战40回合 &#124; Post tags: bug, CSS, ie8, max-width &#124; MediaTemple &#124; (miao) 低调滴华丽主机]]></description>
			<content:encoded><![CDATA[<p>今天遇到一挺郁闷的bug<br />
<strong>IE8 标准模式</strong><br />
要实现如图的效果,图片宽度最大100px,小于100就自适应,<br />
右边文字围绕左边的图<br />
<img class="alignnone size-full wp-image-1561" title="bug_ie8_max-width" src="http://ooxx.me/wp-content/uploads/2010/06/bug_ie8_max-width.png" alt="" width="595" height="178" /></p>
<p><strong></strong></p>
<p><strong>症状:</strong><br />
图片外容器宽度还是取决于图片原始大小而非max-width定义的大小</p>
<p><strong>测试</strong>可跑如下代码<br />
<code>&lt;!DOCTYPE html&gt;&lt;html&gt;&lt;body&gt;&lt;div style="background:#2CA0B7;float:left;"&gt;&lt;img src="http://ooxx.me/me.jpg" style="max-width:50px;" /&gt;&lt;/div&gt;&lt;/body&gt;&lt;/html&gt;<br />
</code></p>
<p>也可以看<strong>DEMO</strong>页<br />
<a href="http://code.sh/lab/demo/bug_ie8_max-width.html" target="_blank">http://code.sh/lab/demo/bug_ie8_max-width.html</a></p>
<p>哪位大湿有无解决方案?</p>
<h3  class="related_post_title">暧昧贴</h3><ul class="related_post"><li><a href="http://ooxx.me/is_home.orz" title="&lt;?php  if ( is_home() ) { ?&gt;无效/失效的解决方案">&lt;?php  if ( is_home() ) { ?&gt;无效/失效的解决方案</a> (23)</li><li><a href="http://ooxx.me/wordpress-theme-editor-bug.orz" title="Wordpress 2.8 主题编辑器 bug">Wordpress 2.8 主题编辑器 bug</a> (29)</li><li><a href="http://ooxx.me/make-loading-effect.orz" title="(无修正)给页面加Loading">(无修正)给页面加Loading</a> (90)</li><li><a href="http://ooxx.me/css-pri.orz" title="没听说过的CSS优先级">没听说过的CSS优先级</a> (38)</li><li><a href="http://ooxx.me/zing-emot.orz" title="修改wordpress默认表情">修改wordpress默认表情</a> (37)</li></ul><hr />
<p><small>  2010. |
<a href="http://ooxx.me/ie8-max-width-bug.orz">Permalink</a> |
<a href="http://ooxx.me/ie8-max-width-bug.orz#comments">大战40回合</a> |
Post tags: <a href="http://ooxx.me/tag/bug" rel="tag">bug</a>, <a href="http://ooxx.me/tag/css" rel="tag">CSS</a>, <a href="http://ooxx.me/tag/ie8" rel="tag">ie8</a>, <a href="http://ooxx.me/tag/max-width" rel="tag">max-width</a> |
<strong><a href="http://miao.in">MediaTemple | (miao) 低调滴华丽主机</a></strong>
</small></p>]]></content:encoded>
			<wfw:commentRss>http://ooxx.me/ie8-max-width-bug.orz/feed</wfw:commentRss>
		<slash:comments>40</slash:comments>
		</item>
		<item>
		<title>预缓存(Preload the cache) WP Super Cache</title>
		<link>http://ooxx.me/preload-cache-wp-super-cache.orz</link>
		<comments>http://ooxx.me/preload-cache-wp-super-cache.orz#comments</comments>
		<pubDate>Mon, 21 Jun 2010 05:06:40 +0000</pubDate>
		<dc:creator>bigCat</dc:creator>
				<category><![CDATA[codex]]></category>
		<category><![CDATA[cache]]></category>
		<category><![CDATA[wp-super-cache]]></category>

		<guid isPermaLink="false">http://ooxx.me/?p=1553</guid>
		<description><![CDATA[不知道 wp-super-cache 的建议看一下最佳 WordPress 缓存插件：WP Super Cache补补课 这会儿后台直接升级Wordpress 3.0 花了1秒钟,感觉巨爽 wp-super-cache 顺手也升了,有几个特性还是要提一下 下面是翻译自官方blog的预缓存(Preload cache) 介绍 Preload the cache in WP Super Cache 看到本周帅气的下垂了么? 我上周日启用了 WP Super Cache 的预缓存(preload cache),这玩意儿明显的降低了服务器的负载,创建缓存时会有个峰值,很黄很暴力 我一直不鼓励用户使用预缓存,主要是因为文件数量会导致一些问题,如果你有几千个缓存文件,硬盘挂了会需要很长时间才能恢复. (注: 有些主机商会限制文件数) 但反过来说,Google把速度作为一个网站的衡量标准之一.在过去,这个插件会忽略爬虫,因为爬虫每次只访问每个页面一次,缓存相对它们是毫无意义的.所有的页面都应该在 Google 还没开始爬过来之前就缓存好 (注: WP Super Cache 工作流程是第一次请求页面时把PHP+MySQL处理结果生成静态页面,再次访问时甚至都不用执行一行代码 ) 如图所示,一旦你启动预缓存,它会挂载在 wp-cron 去获取100 个帖子, 过10秒后再去获取100个帖子 直到读完所有帖子. 它同时会禁止掉老帖子的垃圾回收机制,但有评论和新帖子的时候还是会干掉一些适当的缓存文件 目前它只缓存 文章页 (注:is_single()那种,中文差不知道咋翻译),貌似没啥必要去缓存 archive 或 tag 页,因为很多站已经写了 [...]]]></description>
			<content:encoded><![CDATA[<p>不知道 wp-super-cache 的建议看一下<a href="http://fairyfish.net/2008/10/27/wp-super-cache/" target="_blank">最佳 WordPress 缓存插件：WP Super Cache</a>补补课</p>
<p>这会儿后台直接升级Wordpress 3.0 花了1秒钟,感觉巨爽<br />
wp-super-cache 顺手也升了,有几个特性还是要提一下</p>
<p>下面是翻译自官方blog的预缓存(Preload cache) 介绍<br />
<a href="http://ocaoimh.ie/preload-cache-wp-super-cache/" target="_blank">Preload the cache in WP Super Cache</a></p>
<p><img class="alignnone size-full wp-image-1554" title="cpu" src="http://ooxx.me/wp-content/uploads/2010/06/cpu.png" alt="" width="550" height="227" /></p>
<p>看到本周帅气的下垂了么? 我上周日启用了 WP Super Cache 的预缓存(preload cache),这玩意儿明显的降低了服务器的负载,创建缓存时会有个峰值,很黄很暴力</p>
<p>我一直不鼓励用户使用预缓存,主要是因为文件数量会导致一些问题,如果你有几千个缓存文件,硬盘挂了会需要很长时间才能恢复.<br />
(注: 有些主机商会限制文件数)<br />
但反过来说,Google把速度作为一个网站的衡量标准之一.在过去,这个插件会忽略爬虫,因为爬虫每次只访问每个页面一次,缓存相对它们是毫无意义的.所有的页面都应该在 Google 还没开始爬过来之前就缓存好<br />
(注: WP Super Cache 工作流程是第一次请求页面时把PHP+MySQL处理结果生成静态页面,再次访问时甚至都不用执行一行代码 )</p>
<p><img title="preload-screenshot" src="http://ocaoimh.ie/wp-content/uploads/2010/04/preload-screenshot.png" alt="" width="600" height="490" /></p>
<p>如图所示,一旦你启动预缓存,它会挂载在 wp-cron 去获取100 个帖子, 过10秒后再去获取100个帖子 直到读完所有帖子. 它同时会禁止掉老帖子的垃圾回收机制,但有评论和新帖子的时候还是会干掉一些适当的缓存文件<br />
目前它只缓存 文章页 (注:is_single()那种,中文差不知道咋翻译),貌似没啥必要去缓存 archive 或 tag 页,因为很多站已经写了 robots.txt去忽略这些页面</p>
<p>这次 WP Super Cache 的更新包括了</p>
<ol>
<li> <a href="http://wordpress.org/support/topic/339075?replies=24"></a>更好的支持移动设备插件,例如 MobilePress (注:之前会有电脑访问出现手机界面的bug,不知道现在如何,有遇到问题的朋友请留言)</li>
<li> 增加了缓存测试功能(注:之前只能通过查看页面源代码最底下的注释了解情况)</li>
<li> 可设置只在评论更新的时候更新缓存,而不是前台或相关页面</li>
<li> Works in WordPress 3.0.</li>
</ol>
<p>它还有一堆 bug 要修, 和其他功能要增加</p>
<p>愿意当小白鼠的可以尝试开发版本 from <a href="http://wordpress.org/extend/plugins/wp-super-cache/download/" target="_blank">the   download page</a> ,有问题就反馈到 <a href="http://wordpress.org/tags/wp-super-cache?forum_id=10" target="_blank">support   forum</a></p>
<p>=====补刀======================</p>
<p>如何安装 WP Super Cache ?<br />
答: 进入后台,选择左侧 plugins -&gt; Add New -&gt;输入 WP Super Cache 点 Search Plugs -&gt; Install  Now</p>
<p>小博客很适合开启全站预缓存<br />
个人觉得没必要设置定时重新生成全站缓存,如果你老帖子变动不频繁的话<br />
因为即使老帖子变动了,对应的也会自动生成</p>
<p>有同学问,我网站规模太小,是不是不需要缓存?<br />
答: 缓存是为了自己爽, 提速不是一个段位</p>
<p>=====补2刀=====================</p>
<p>使用<a href="http://miao.in" target="_blank"> (miao) </a>服务器的同学不用开启 gzip ,偶已经配置了默认压缩指定文件类型<br />
也不用担心文件数的问题, 偶木有做限制</p>
<p><span style="color:#FFF">QQREADERD1F79C5048631991</span></p>
<h3  class="related_post_title">滚烫贴</h3><ul class="related_post"><li><a href="http://ooxx.me/readme" title="ReadMe">ReadMe</a> (289)</li><li><a href="http://ooxx.me/mail.orz" title="囧mail">囧mail</a> (147)</li><li><a href="http://ooxx.me/home.orz" title="回家">回家</a> (139)</li><li><a href="http://ooxx.me/korean-input-system-winxp.orz" title="winXP下的韩文输入法">winXP下的韩文输入法</a> (110)</li><li><a href="http://ooxx.me/rent-house.orz" title="深圳大学北门附近合租房(失效)">深圳大学北门附近合租房(失效)</a> (108)</li></ul><hr />
<p><small>  2010. |
<a href="http://ooxx.me/preload-cache-wp-super-cache.orz">Permalink</a> |
<a href="http://ooxx.me/preload-cache-wp-super-cache.orz#comments">大战25回合</a> |
Post tags: <a href="http://ooxx.me/tag/cache" rel="tag">cache</a>, <a href="http://ooxx.me/tag/wp-super-cache" rel="tag">wp-super-cache</a> |
<strong><a href="http://miao.in">MediaTemple | (miao) 低调滴华丽主机</a></strong>
</small></p>]]></content:encoded>
			<wfw:commentRss>http://ooxx.me/preload-cache-wp-super-cache.orz/feed</wfw:commentRss>
		<slash:comments>25</slash:comments>
		</item>
		<item>
		<title>ssh 如何统计当前目录文件数</title>
		<link>http://ooxx.me/ssh-file-count.orz</link>
		<comments>http://ooxx.me/ssh-file-count.orz#comments</comments>
		<pubDate>Fri, 04 Jun 2010 17:08:46 +0000</pubDate>
		<dc:creator>bigCat</dc:creator>
				<category><![CDATA[codex]]></category>
		<category><![CDATA[find]]></category>
		<category><![CDATA[pipe]]></category>
		<category><![CDATA[ssh]]></category>
		<category><![CDATA[wc]]></category>

		<guid isPermaLink="false">http://ooxx.me/?p=1545</guid>
		<description><![CDATA[很多主机暗地里会限制文件数量, 或有朝一日突发奇想想了解我的站有多少个文件捏? 只需要登录SSH运行如下命令 find . -type f -print &#124;wc -l 虽然快餐式的命令很威武,但是要好好学Linux命令建议从基础开始,下面是解释 find 这是一个叫find的命令 空格 . 这个点表示当前目录 空格 -type f 这个type有8个值,其中 f 代表regular file 空格 -print 带这个参数为了把查找结果每行一个显示出来 空格 &#124; 这根线,恩恩,它看起来像根JJ,但其实是个pipe 空格 wc 这个命令,厄... 这命令是用来显示新行,单词,比特数量的 -l 这个wc的参数相当于 --line 作用是显示总行数 总结成一句连贯的命令就是 在当前目录查找所有文件并把每行一个文件名的结果输出给wc wc再数一下有多少行 也就是当前目录总的有多少文件数了 暧昧贴如何解决 SSH 导入/导出中文数据库乱码 (17)SSH 入门教程(常用命令) (63)vi 基础入门 (39)一分钟建立 jQuery API 在线手册站 (18)(mt) Media Temple [...]]]></description>
			<content:encoded><![CDATA[<p>很多主机暗地里会限制文件数量, 或有朝一日突发奇想想了解我的站有多少个文件捏?</p>
<p>只需要登录SSH运行如下命令<br />
<code>find . -type f -print |wc -l </code></p>
<p>虽然快餐式的命令很威武,但是要好好学Linux命令建议从基础开始,下面是解释<br />
<strong>find </strong>这是一个叫find的命令<br />
空格<br />
<strong>. </strong>这个点表示当前目录<br />
空格<br />
<strong>-type f </strong>这个type有8个值,其中 <strong>f</strong> 代表regular file<br />
空格<br />
<strong>-print</strong> 带这个参数为了把查找结果每行一个显示出来<br />
空格<br />
<strong>| </strong> 这根线,恩恩,它看起来像根JJ,但其实是个pipe<br />
空格<br />
<strong>wc </strong> 这个命令,厄... 这命令是用来显示新行,单词,比特数量的<br />
<strong>-l </strong> 这个wc的参数相当于 --line 作用是显示总行数</p>
<p>总结成一句连贯的命令就是<br />
在当前目录查找所有文件并把每行一个文件名的结果输出给wc<br />
wc再数一下有多少行<br />
也就是当前目录总的有多少文件数了</p>
<h3  class="related_post_title">暧昧贴</h3><ul class="related_post"><li><a href="http://ooxx.me/messy-imported-mysql.orz" title="如何解决 SSH 导入/导出中文数据库乱码">如何解决 SSH 导入/导出中文数据库乱码</a> (17)</li><li><a href="http://ooxx.me/common-ssh-commands.orz" title="SSH 入门教程(常用命令)">SSH 入门教程(常用命令)</a> (63)</li><li><a href="http://ooxx.me/basic-vi.orz" title="vi 基础入门">vi 基础入门</a> (39)</li><li><a href="http://ooxx.me/jquery-api-online.orz" title="一分钟建立 jQuery API 在线手册站">一分钟建立 jQuery API 在线手册站</a> (18)</li><li><a href="http://ooxx.me/mediatemple-coupon-code.orz" title="(mt) Media Temple 优惠码 75折 (25% off)">(mt) Media Temple 优惠码 75折 (25% off)</a> (48)</li></ul><hr />
<p><small>  2010. |
<a href="http://ooxx.me/ssh-file-count.orz">Permalink</a> |
<a href="http://ooxx.me/ssh-file-count.orz#comments">大战12回合</a> |
Post tags: <a href="http://ooxx.me/tag/find" rel="tag">find</a>, <a href="http://ooxx.me/tag/pipe" rel="tag">pipe</a>, <a href="http://ooxx.me/tag/ssh" rel="tag">ssh</a>, <a href="http://ooxx.me/tag/wc" rel="tag">wc</a> |
<strong><a href="http://miao.in">MediaTemple | (miao) 低调滴华丽主机</a></strong>
</small></p>]]></content:encoded>
			<wfw:commentRss>http://ooxx.me/ssh-file-count.orz/feed</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>MediaTemple 如何用SSH升级WordPress</title>
		<link>http://ooxx.me/ssh-upgrade-wordpress-mt.orz</link>
		<comments>http://ooxx.me/ssh-upgrade-wordpress-mt.orz#comments</comments>
		<pubDate>Sat, 20 Feb 2010 04:30:18 +0000</pubDate>
		<dc:creator>bigCat</dc:creator>
				<category><![CDATA[codex]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mediatemple]]></category>
		<category><![CDATA[mt]]></category>

		<guid isPermaLink="false">http://ooxx.me/?p=1449</guid>
		<description><![CDATA[WordPress 真是越来越嚣张了, 传授一招用 SSH 几秒钟快速升级的方法如下 假设你老的wordpress文件就直接丢在根目录下 首先用SecureCRT或Putty等登陆上去 (帐号密码同FTP,端口问大猫) 登陆后会有个提示符,看似 DOS 胜 DOS 其实就是 DOS MediaTemple 用户登陆后的默认目录是 (可输入 pwd 查看) /var/www/vhosts/ooxx.me/ 那么我们来输入 cd httpdocs 或 cd httpd 再按 tab 补全 进入httpdocs目录,也就是网站根目录 wget http://wordpress.org/latest.zip 中文版地址 http://cn.wordpress.org/ wp中文团队做的汉化 http://code.google.com/p/wpcn/downloads/list 这句就素获取最新的 wordpress 到当前目录 unzip latest.zip 解压缩出来一个wordpress目录,包含最新的文件 alias cp=cp 写这句是因为CentOS默认把 cp 映射为 cp -i 覆盖会提示,所以咱把他复位 cp -rf wordpress/* . 把 [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-1451" title="ninja" src="http://ooxx.me/wp-content/uploads/2010/02/ninja.jpg" alt="" width="500" height="366" /></p>
<p>WordPress 真是越来越嚣张了, 传授一招用 SSH 几秒钟快速升级的方法如下<br />
假设你老的wordpress文件就直接丢在根目录下</p>
<p><strong>首先用SecureCRT或Putty等登陆上去</strong><br />
(帐号密码同FTP,端口问大猫)</p>
<p>登陆后会有个提示符,看似 DOS 胜 DOS 其实就是 DOS</p>
<p>MediaTemple 用户登陆后的默认目录是<br />
(可输入 pwd 查看)</p>
<blockquote><p>/var/www/vhosts/ooxx.me/</p></blockquote>
<p>那么我们来输入</p>
<p><code>cd httpdocs</code></p>
<p>或</p>
<p><code>cd httpd 再按 tab 补全</code></p>
<p>进入httpdocs目录,也就是网站根目录</p>
<p><code>wget http://wordpress.org/latest.zip</code><br />
中文版地址<br />
<a href="http://cn.wordpress.org/">http://cn.wordpress.org/</a><br />
wp中文团队做的汉化<br />
<a href="http://code.google.com/p/wpcn/downloads/list">http://code.google.com/p/wpcn/downloads/list</a></p>
<p>这句就素获取最新的 wordpress 到当前目录</p>
<p><code>unzip latest.zip</code></p>
<p>解压缩出来一个wordpress目录,包含最新的文件</p>
<p><code>alias cp=cp</code></p>
<p>写这句是因为CentOS默认把 cp 映射为 cp -i 覆盖会提示,所以咱把他复位</p>
<p><code>cp -rf wordpress/* .</code></p>
<p>把 wordpress 目录下的文件复制并覆盖当前目录的文件</p>
<p>升级完成</p>
<p>扫尾(删除升级文件)</p>
<p><code>rm -rf wordpress/ latest.zip</code></p>
<p>或者</p>
<p><code>rm -rf wo 按tab补全 la 再按tab补全</code></p>
<p>相关资料</p>
<p><a href="http://ooxx.me/common-ssh-commands.orz">SSH入门教程(常用命令)</a><br />
<a href="http://www.tuxfiles.org/linuxhelp/fileman.html" target="_blank">Linux 下的 cp mv rm</a><br />
看不懂回头我翻译下</p>
<h3  class="related_post_title">暧昧贴</h3><ul class="related_post"><li><a href="http://ooxx.me/installing-java-6-and-tomcat-6-on-mediatemple-virtual-dedicated-server-linux.orz" title="在 MediaTemple DV(linux)上安装 Java 6 和 Tomcat 6">在 MediaTemple DV(linux)上安装 Java 6 和 Tomcat 6</a> (20)</li><li><a href="http://ooxx.me/fail-to-receive-emails-with-google-apps.orz" title="Google Apps 自定义域名邮局无法接受 WordPress 邮件">Google Apps 自定义域名邮局无法接受 WordPress 邮件</a> (52)</li><li><a href="http://ooxx.me/mt-miao-in-logo.orz" title="(mt) Miao.in LOGO">(mt) Miao.in LOGO</a> (38)</li><li><a href="http://ooxx.me/common-ssh-commands.orz" title="SSH 入门教程(常用命令)">SSH 入门教程(常用命令)</a> (63)</li><li><a href="http://ooxx.me/mediatemple-coupon-code.orz" title="(mt) Media Temple 优惠码 75折 (25% off)">(mt) Media Temple 优惠码 75折 (25% off)</a> (48)</li></ul><hr />
<p><small>  2010. |
<a href="http://ooxx.me/ssh-upgrade-wordpress-mt.orz">Permalink</a> |
<a href="http://ooxx.me/ssh-upgrade-wordpress-mt.orz#comments">大战15回合</a> |
Post tags: <a href="http://ooxx.me/tag/bash" rel="tag">bash</a>, <a href="http://ooxx.me/tag/linux" rel="tag">linux</a>, <a href="http://ooxx.me/tag/mediatemple" rel="tag">mediatemple</a>, <a href="http://ooxx.me/tag/mt" rel="tag">mt</a> |
<strong><a href="http://miao.in">MediaTemple | (miao) 低调滴华丽主机</a></strong>
</small></p>]]></content:encoded>
			<wfw:commentRss>http://ooxx.me/ssh-upgrade-wordpress-mt.orz/feed</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>在 MediaTemple DV(linux)上安装 Java 6 和 Tomcat 6</title>
		<link>http://ooxx.me/installing-java-6-and-tomcat-6-on-mediatemple-virtual-dedicated-server-linux.orz</link>
		<comments>http://ooxx.me/installing-java-6-and-tomcat-6-on-mediatemple-virtual-dedicated-server-linux.orz#comments</comments>
		<pubDate>Tue, 09 Feb 2010 08:42:08 +0000</pubDate>
		<dc:creator>bigCat</dc:creator>
				<category><![CDATA[codex]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[mediatemple]]></category>
		<category><![CDATA[miao]]></category>
		<category><![CDATA[mt]]></category>
		<category><![CDATA[tomcat]]></category>
		<category><![CDATA[庙]]></category>

		<guid isPermaLink="false">http://ooxx.me/?p=1442</guid>
		<description><![CDATA[呃,看起来很少有主机支持 Java Web application, 总所周知的原因,偶本人是 MediaTemple 的死忠用户 - 他们的价格合理(穷人当偶木说,自己去看看庙的合租吧),服务一流,是偶用过的主机中最赞滴 但是MediaTemple也不支持Java, 偶的意思是他们的 "(dv)"没有把 Java 默认安装, Plesk后台躺着一只死猫(需要花钱购买Plesk的TomCat支持) 不过大猫的一位朋友拜托偶装个TomCat, 大猫说朋友一场不谈钱 他很自觉的塞了一把银子过来,俺也不好拒绝... ... 只要有 root权限, 让偶们来把  Java 和 TomCat 搞起 第一步: 开启 root 权限 进入MediaTemple后台 http://ac.mediatemple.net 开启 root 和安装好开发者工具包 第二步: 下载 Java 这次要求只是一个网站跑 jsp 那偶喜欢直接把 Tomcat 丢在那个站的目录下,当然你可以随便安装在什么目录,只要自己找的到 于是偶准备丢在 /var/www/vhosts/ooxx.me/subdomains/app/dependencies 首先下载最新的 Java JDK RPM bin 文件 你可以在 Java developers Web [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-1443" title="java-tomcat-mediatemple" src="http://ooxx.me/wp-content/uploads/2010/02/java-tomcat-mediatemple.jpg" alt="" width="650" height="433" /></p>
<p>呃,看起来很少有主机支持 Java Web application, 总所周知的原因,偶本人是 <a href="http://ooxx.me/mt" target="_blank">MediaTemple </a>的死忠用户 - 他们的价格合理(穷人当偶木说,自己去看看<a href="http://miao.in" target="_blank">庙的合租</a>吧),服务一流,是偶用过的主机中最赞滴</p>
<p>但是MediaTemple也不支持Java, 偶的意思是他们的 "(dv)"没有把 Java 默认安装, Plesk后台躺着一只死猫(需要花钱购买Plesk的TomCat支持)</p>
<p>不过大猫的一位朋友拜托偶装个TomCat, 大猫说朋友一场不谈钱<br />
他很自觉的塞了一把银子过来,俺也不好拒绝... ...</p>
<p>只要有 root权限, 让偶们来把  Java 和 TomCat 搞起</p>
<h3>第一步: 开启 root 权限</h3>
<p>进入MediaTemple后台 <a href="http://ac.mediatemple.net" target="_blank">http://ac.mediatemple.net</a></p>
<p><img class="alignnone size-full wp-image-1444" title="root-access-and-developer-tools" src="http://ooxx.me/wp-content/uploads/2010/02/root-access-and-developer-tools.png" alt="" width="600" height="259" /></p>
<p>开启 root 和安装好开发者工具包</p>
<h3>第二步: 下载 Java</h3>
<p>这次要求只是一个网站跑 jsp 那偶喜欢直接把 Tomcat 丢在那个站的目录下,当然你可以随便安装在什么目录,只要自己找的到</p>
<p>于是偶准备丢在<br />
<code>/var/www/vhosts/ooxx.me/subdomains/app/dependencies</code></p>
<p>首先下载最新的 Java JDK RPM bin 文件<br />
你可以在 <a href="http://java.sun.com/javase/downloads/index.jsp" target="_blank">Java developers Web site</a> 获取</p>
<p>下载到本地或直接 wget 也没关系(wget过来文件名巨长, 自行mv一下)</p>
<blockquote><p>tips:<strong> SSH下重命名超长超烂文件名技巧</strong><br />
例如有个文件的文件名是<br />
<code>jdk-6u18-linux-i586-rpm.bin\?AuthParam\=1265698813_406a5d7af31c0eefcc5819168ddcc352\&#038;TicketId\=CJ0mgZXDkTeGxJrrXYELBA8\=\&#038;GroupName\=CDS\&#038;FilePath\=%2FESD6%2FJSCDL%2Fjdk%2F6u18-b07%2Fjdk-6u18-linux-i586-rpm.bin\&#038;File\=jdk-6u18-linux-i586-rpm.bin </code></p>
<p>mv不是移动文件命令么? 你说移动和重命名有区别咩?</p>
<p>我们需要输入</p>
<p><code>mv jdk-6u18-linux-i586-rpm.bin\?AuthParam\=1265698813_406a5d7af31c0eefcc5819168ddcc352\&#038;TicketId\=CJ0mgZXDkTeGxJrrXYELBA8\=\&#038;GroupName\=CDS\&#038;FilePath\=%2FESD6%2FJSCDL%2Fjdk%2F6u18-b07%2Fjdk-6u18-linux-i586-rpm.bin\&#038;File\=jdk-6u18-linux-i586-rpm.bin jdk-6u18-linux-i586-rpm.bin</code></p>
<p>但输入时只需要 mv空格j按Tab自动补全文件名再按空格 jdk-6u18-linux-i586-rpm.bin 回车<br />
这里的j是文件名首字母,当然你可以输入jd后按tab或jdk后,<br />
如有首字母相同的文件在同目录下,会无法补全并全部列给你,那会儿多打几个字再tab</p>
<p>Tab补全法是入门者必须要掌握的, 要是有朝一日你成为高手了,那就复制粘贴好了...</p></blockquote>
<h3>第三步: 运行 Java 安装程序</h3>
<p>好,我们<br />
<code>mkdir JDK</code><br />
然后<br />
<code>cd JDK</code><br />
切进去<br />
把刚才下载的 jdk-6u18-linux-i586-rpm.bin ftp上去或直接wget进去<br />
增加执行权限(权限的帖子酝酿中随后放出)<br />
<code>chmod a+x *.bin</code><br />
OK,你可以执行了<br />
<code>./jdk-6u18-linux-i586-rpm.bin </code><br />
按住回车到 Java 协议的末尾,他会问你yes还是no<br />
你输入no按回车的话就会退出安装<br />
yes的话可能就装好Java鸟</p>
<h3>第四步:下载 Tomcat </h3>
<p>你可以在 <a href="http://tomcat.apache.org/download-60.cgi">Tomcat Web site</a> 找到最新的 Tomcat 版本<br />
选择 Core ,不是 Deployer 或 Source<br />
和Java一样<br />
<code>mkdir Tomcat</code><br />
然后<br />
<code>cd Tomcat</code><br />
用ftp或wget把下载来的压缩包丢进去<br />
<code>wget http://apache.inetbridge.net/tomcat/tomcat-6/v6.0.20/bin/apache-tomcat-6.0.20.tar.gz</code></p>
<h3>第五步:解压缩Tomcat </h3>
<p><code><br />
gunzip apache-tomcat-6.0.20.tar.gz<br />
tar -xf apache-tomcat-6.0.20.tar<br />
</code><br />
解压缩后会自动创建一个 apache-tomcat-6.0.20 的目录,目录里是压缩包里的内容<br />
偶喜欢丢在自己的目录里<br />
把它们移动出来<br />
<code>mv apache-tomcat-6.0.20/* .</code></p>
<h3>第六步:测试 Tomcat </h3>
<p><code>./bin/startup.sh</code><br />
Tomcat 会吐出4行信息,例如</p>
<blockquote><p>
Using CATALINA_BASE:   /var/www/vhosts/ooxx.me/subdomains/app/dependencies/tomcat<br />
Using CATALINA_HOME:   /var/www/vhosts/ooxx.me/subdomains/app/dependencies/tomcat<br />
Using CATALINA_TMPDIR: /var/www/vhosts/ooxx.me/subdomains/app/dependencies/tomcat/temp<br />
Using JRE_HOME:        /usr<br />
Using CLASSPATH:       /var/www/vhosts/ooxx.me/subdomains/app/dependencies/tomcat/bin/bootstrap.jar
</p></blockquote>
<p>可以试着访问下<br />
http://ooxx.me:8080 (换成你自己域名,偶其实没装在ooxx里)<br />
因为apache的httpd跑着80端口, tomcat默认端口是8080,俩不能弄一块儿,除非反向代理,那个自己去查<br />
如果看到Tomcat Management界面,辣就是安装好了</p>
<h3>第七步:创建 Tomcat 服务 </h3>
<p><code>vi /etc/init.d/tomcat</code><br />
按i进入插入模式,粘贴下面的代码</p>
<pre><code>

# This is the init script for starting up the
#  Jakarta Tomcat server
#
# chkconfig: 345 91 10
# description: Starts and stops the Tomcat daemon.
#

# Source function library.
. /etc/rc.d/init.d/functions

# Get config.
. /etc/sysconfig/network

# Check that networking is up.
[ "${NETWORKING}" = "no" ] &#038;& exit 0

tomcat=/your/path/to/tomcat
startup=$tomcat/bin/startup.sh
shutdown=$tomcat/bin/shutdown.sh
export JRE_HOME=/usr

start(){
 echo -n $"Starting Tomcat service: "
 #daemon -c
 $startup
 RETVAL=$?
 echo
}

stop(){
 action $"Stopping Tomcat service: " $shutdown
 RETVAL=$?
 echo
}

restart(){
 stop
 start
}

# See how we were called.
case "$1" in
start)
 start
 ;;
stop)
 stop
 ;;
status)
 # This doesn't work
 status tomcat
 ;;
restart)
 restart
 ;;
*)
 echo $"Usage: $0 {start|stop|status|restart}"
 exit 1
esac

exit 0

</code></pre>
<p>esc 输入 :wq 保存<br />
(记得修改里面的路径)</p>
<p>继续增加执行权限<br />
<code>chmod a+x /etc/init.d/tomcat</code><br />
测试下好使不</p>
<p><code>/etc/init.d/tomcat stop<br />
/etc/init.d/tomcat start</code></p>
<p>嗯嗯... 事情就是这样子滴</p>
<h3  class="related_post_title">暧昧贴</h3><ul class="related_post"><li><a href="http://ooxx.me/mt-miao-in-logo.orz" title="(mt) Miao.in LOGO">(mt) Miao.in LOGO</a> (38)</li><li><a href="http://ooxx.me/fail-to-receive-emails-with-google-apps.orz" title="Google Apps 自定义域名邮局无法接受 WordPress 邮件">Google Apps 自定义域名邮局无法接受 WordPress 邮件</a> (52)</li><li><a href="http://ooxx.me/ssh-upgrade-wordpress-mt.orz" title="MediaTemple 如何用SSH升级Wordpress">MediaTemple 如何用SSH升级Wordpress</a> (15)</li><li><a href="http://ooxx.me/common-ssh-commands.orz" title="SSH 入门教程(常用命令)">SSH 入门教程(常用命令)</a> (63)</li><li><a href="http://ooxx.me/mediatemple-coupon-code.orz" title="(mt) Media Temple 优惠码 75折 (25% off)">(mt) Media Temple 优惠码 75折 (25% off)</a> (48)</li></ul><hr />
<p><small>  2010. |
<a href="http://ooxx.me/installing-java-6-and-tomcat-6-on-mediatemple-virtual-dedicated-server-linux.orz">Permalink</a> |
<a href="http://ooxx.me/installing-java-6-and-tomcat-6-on-mediatemple-virtual-dedicated-server-linux.orz#comments">大战20回合</a> |
Post tags: <a href="http://ooxx.me/tag/java" rel="tag">java</a>, <a href="http://ooxx.me/tag/mediatemple" rel="tag">mediatemple</a>, <a href="http://ooxx.me/tag/miao" rel="tag">miao</a>, <a href="http://ooxx.me/tag/mt" rel="tag">mt</a>, <a href="http://ooxx.me/tag/tomcat" rel="tag">tomcat</a>, <a href="http://ooxx.me/tag/%e5%ba%99" rel="tag">庙</a> |
<strong><a href="http://miao.in">MediaTemple | (miao) 低调滴华丽主机</a></strong>
</small></p>]]></content:encoded>
			<wfw:commentRss>http://ooxx.me/installing-java-6-and-tomcat-6-on-mediatemple-virtual-dedicated-server-linux.orz/feed</wfw:commentRss>
		<slash:comments>20</slash:comments>
		</item>
		<item>
		<title>cuteftp pro 显示 .htaccess</title>
		<link>http://ooxx.me/ftp-htaccess.orz</link>
		<comments>http://ooxx.me/ftp-htaccess.orz#comments</comments>
		<pubDate>Sun, 17 Jan 2010 08:21:48 +0000</pubDate>
		<dc:creator>bigCat</dc:creator>
				<category><![CDATA[codex]]></category>
		<category><![CDATA[ftp]]></category>
		<category><![CDATA[Htaccess]]></category>

		<guid isPermaLink="false">http://ooxx.me/?p=1428</guid>
		<description><![CDATA[站点管理器,某站点,属性,actions里,过滤器,启动服务器端过滤 -a 还有用 filezilla 的小盆友可以直接在菜单栏的[服务器(s)]里选择强制显示隐藏文件 暧昧贴为何Wordpress需要连接信息 (17)ieTester &#8211; debugBar (37).Htaccess与WP的Permalinks滴冲突 (29) 2010. &#124; Permalink &#124; 大战20回合 &#124; Post tags: ftp, Htaccess &#124; MediaTemple &#124; (miao) 低调滴华丽主机]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-1429" title="cuteftppro-htaccess" src="http://ooxx.me/wp-content/uploads/2010/01/cuteftppro-htaccess.png" alt="" width="566" height="547" /></p>
<p>站点管理器,某站点,属性,actions里,过滤器,启动服务器端过滤 -a</p>
<p>还有用 filezilla 的小盆友可以直接在菜单栏的[服务器(s)]里选择强制显示隐藏文件</p>
<h3  class="related_post_title">暧昧贴</h3><ul class="related_post"><li><a href="http://ooxx.me/connection-information.orz" title="为何Wordpress需要连接信息">为何Wordpress需要连接信息</a> (17)</li><li><a href="http://ooxx.me/ietester-debugbar.orz" title="ieTester &#8211; debugBar">ieTester &#8211; debugBar</a> (37)</li><li><a href="http://ooxx.me/htaccess-wordpress-permalinks-conflict.orz" title=".Htaccess与WP的Permalinks滴冲突">.Htaccess与WP的Permalinks滴冲突</a> (29)</li></ul><hr />
<p><small>  2010. |
<a href="http://ooxx.me/ftp-htaccess.orz">Permalink</a> |
<a href="http://ooxx.me/ftp-htaccess.orz#comments">大战20回合</a> |
Post tags: <a href="http://ooxx.me/tag/ftp" rel="tag">ftp</a>, <a href="http://ooxx.me/tag/htaccess" rel="tag">Htaccess</a> |
<strong><a href="http://miao.in">MediaTemple | (miao) 低调滴华丽主机</a></strong>
</small></p>]]></content:encoded>
			<wfw:commentRss>http://ooxx.me/ftp-htaccess.orz/feed</wfw:commentRss>
		<slash:comments>20</slash:comments>
		</item>
		<item>
		<title>搞基百科</title>
		<link>http://ooxx.me/if-wiki.orz</link>
		<comments>http://ooxx.me/if-wiki.orz#comments</comments>
		<pubDate>Sat, 16 Jan 2010 18:59:28 +0000</pubDate>
		<dc:creator>bigCat</dc:creator>
				<category><![CDATA[codex]]></category>
		<category><![CDATA[搞基百科]]></category>

		<guid isPermaLink="false">http://ooxx.me/?p=1427</guid>
		<description><![CDATA[偶还是觉得wiki比wordpress更适合做wiki... 一直以来没有代码类的wiki,偶拿 http://if.vc 先搞起,等肚子搞大了估计玩的人就多了 顺手把那个传说中的老爷主题 wordpress-cli 给修了下,使 ie和webkit能打字了 = =/// 有需要的去 http://code.google.com/p/ooxx/downloads/list 下载 一大堆bug...作者貌似也懒得更新,不过至少能输入命令跳转,显得很酷,挖哈哈 滚烫贴ReadMe (289)囧mail (147)回家 (139)winXP下的韩文输入法 (110)深圳大学北门附近合租房(失效) (108) 2010. &#124; Permalink &#124; 大战25回合 &#124; Post tags: 搞基百科 &#124; MediaTemple &#124; (miao) 低调滴华丽主机]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-1426" title="if.vc" src="http://ooxx.me/wp-content/uploads/2010/01/if.vc.png" alt="" width="657" height="397" /></p>
<p>偶还是觉得wiki比wordpress更适合做wiki...</p>
<p>一直以来没有代码类的wiki,偶拿 <a href="http://if.vc" target="_blank">http://if.vc</a> 先搞起,等肚子搞大了估计玩的人就多了</p>
<p>顺手把那个传说中的老爷主题 <a href="http://code.google.com/p/wordpress-cli/" target="_blank">wordpress-cli</a> 给修了下,使 ie和webkit能打字了 = =///</p>
<p>有需要的去 <a href="http://code.google.com/p/ooxx/downloads/list" target="_blank">http://code.google.com/p/ooxx/downloads/list</a> 下载</p>
<p>一大堆bug...作者貌似也懒得更新,不过至少能输入命令跳转,显得很酷,挖哈哈</p>
<h3  class="related_post_title">滚烫贴</h3><ul class="related_post"><li><a href="http://ooxx.me/readme" title="ReadMe">ReadMe</a> (289)</li><li><a href="http://ooxx.me/mail.orz" title="囧mail">囧mail</a> (147)</li><li><a href="http://ooxx.me/home.orz" title="回家">回家</a> (139)</li><li><a href="http://ooxx.me/korean-input-system-winxp.orz" title="winXP下的韩文输入法">winXP下的韩文输入法</a> (110)</li><li><a href="http://ooxx.me/rent-house.orz" title="深圳大学北门附近合租房(失效)">深圳大学北门附近合租房(失效)</a> (108)</li></ul><hr />
<p><small>  2010. |
<a href="http://ooxx.me/if-wiki.orz">Permalink</a> |
<a href="http://ooxx.me/if-wiki.orz#comments">大战25回合</a> |
Post tags: <a href="http://ooxx.me/tag/%e6%90%9e%e5%9f%ba%e7%99%be%e7%a7%91" rel="tag">搞基百科</a> |
<strong><a href="http://miao.in">MediaTemple | (miao) 低调滴华丽主机</a></strong>
</small></p>]]></content:encoded>
			<wfw:commentRss>http://ooxx.me/if-wiki.orz/feed</wfw:commentRss>
		<slash:comments>25</slash:comments>
		</item>
	</channel>
</rss>
