<?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>IGI&#039;s Blog &#187; 小砸碎</title>
	<atom:link href="http://www.igigo.net/archives/category/%e5%b0%8f%e7%a0%b8%e7%a2%8e/feed" rel="self" type="application/rss+xml" />
	<link>http://www.igigo.net</link>
	<description></description>
	<lastBuildDate>Fri, 09 Dec 2011 04:19:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
	
<!-- Start Of Script Generated By WP-PostViews Plus -->
<script type='text/javascript' src='http://www.igigo.net/wp-includes/js/jquery/jquery.js?ver=1.4.2'></script>
<script type="text/javascript">
/* <![CDATA[ */
/* ]]> */
</script>
<!-- End Of Script Generated By WP-PostViews Plus -->
	<item>
		<title>Debian在线升级dell服务器BIOS</title>
		<link>http://www.igigo.net/archives/192</link>
		<comments>http://www.igigo.net/archives/192#comments</comments>
		<pubDate>Fri, 09 Dec 2011 04:15:38 +0000</pubDate>
		<dc:creator>igi</dc:creator>
				<category><![CDATA[小砸碎]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[dell]]></category>

		<guid isPermaLink="false">http://www.igigo.net/?p=192</guid>
		<description><![CDATA[Debian在线升级dell服务器BIOS]]></description>
			<content:encoded><![CDATA[<p>  1. 安装libsmbios软件包:<br />
    * 工具主页及文档: <a href="http://linux.dell.com/libsmbios/main/index.html">http://linux.dell.com/libsmbios/main/index.html</a></p>
<pre class="brush: bash; title: ;">
aptitude update
aptitude install libsmbios-bin
</pre>
<p>  2. 查看当前BIOS版本及编号: 需要记住 System ID 及 BIOS Version 的值</p>
<pre class="brush: bash; title: ;">
hostname:/home/igi# getSystemId
Libsmbios:    2.0.3
System ID:    0x01B3
Service Tag:  XXXXXXX
Express Service Code: XXXXXXXXX
Product Name: PowerEdge 1950
BIOS Version: 2.2.6
Vendor:       Dell Inc.
Is Dell:      1
</pre>
<p>  3. 下载对应BIOS的最新版本: <a href="http://linux.dell.com/repo/firmware/bios-hdrs/">http://linux.dell.com/repo/firmware/bios-hdrs/</a><br />
    * url格式: system_bios_ven_0x1028_dev_SYSTEM_ID_version_BIOS_VERSION<br />
以 System ID为 0x01B3， BIOS Version为 2.2.6 为例<br />
则需要找到: http://linux.dell.com/repo/firmware/bios-hdrs/ 下<br />
对应的 system_bios_ven_0x1028_dev_0x01b3_version_x.x.x (x.x.x需要大于当前版本，如没有特别需求，使用最新版本即可)<br />
对应的url为: http://linux.dell.com/repo/firmware/bios-hdrs/system_bios_ven_0x1028_dev_0x01b3_version_x.x.x/bios.hdr</p>
<pre class="brush: bash; title: ;">
wget http://linux.dell.com/repo/firmware/bios-hdrs/system_bios_ven_0x1028_dev_0x01b3_version_x.x.x/bios.hdr
</pre>
<p>  4. 加载升级所需内核模块dell_rbu</p>
<pre class="brush: bash; title: ;">
modprobe dell_rbu
#确认模块已加载
lsmod | grep dell_rbu
dell_rbu                6800  0
firmware_class          7584  2 dell_rbu,bnx2
</pre>
<p>  注意： 默认的debian内核已经有此模块，如果是其他内核，需要编译内核时做调整，推荐编译成模块</p>
<pre class="brush: bash; title: ;">
Firmware Drivers ---&gt;
&lt;M&gt; BIOS update support for DELL systems via sysfs
</pre>
<p>  5. 升级BIOS</p>
<pre class="brush: bash; title: ;">
dellBiosUpdate -u -f bios.hdr
</pre>
<p>输出示例</p>
<pre class="brush: bash; title: ;">
dellBiosUpdate -u -f bios.hdr

WARNING: packet updates are not fully tested yet for packet modes v0/v2.
         We recommend that only monlithic updates be used at this point.
         You should only use packet mode on v0/v2 systems if you know what you are
         doing (for example, testing.)

Forcing MONOLITHIC mode...

Supported RBU type for this system: (MONOLITHIC, PACKET)
Using RBU v2 driver. Initializing Driver.
Setting RBU type in v2 driver to: MONOLITHIC (FORCED)
Prep driver for data load.
Writing RBU data (4096bytes/dot): .................................................
Notify driver data is finished.
Activate CMOS bit to notify BIOS that update is ready on next boot.
Update staged sucessfully. BIOS update will occur on next reboot.
</pre>
<p>  6. 重启系统<br />
  7. 确认BIOS版本号</p>
<pre class="brush: bash; title: ;">
hostname:/home/igi# getSystemId
Libsmbios:    2.0.3
System ID:    0x01B3
Service Tag:  XXXXXXX
Express Service Code: XXXXXXXXXX
Product Name: PowerEdge 1950
BIOS Version: 2.7.0
Vendor:       Dell Inc.
Is Dell:      1
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.igigo.net/archives/192/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>crontab中不支持变量互相引用</title>
		<link>http://www.igigo.net/archives/118</link>
		<comments>http://www.igigo.net/archives/118#comments</comments>
		<pubDate>Wed, 01 Dec 2010 08:05:56 +0000</pubDate>
		<dc:creator>igi</dc:creator>
				<category><![CDATA[小砸碎]]></category>
		<category><![CDATA[crontab]]></category>

		<guid isPermaLink="false">http://www.igigo.net/?p=118</guid>
		<description><![CDATA[今天心血来潮, 整理起某台服务器的crontab， 添加了两个变量来代替冗长的路径 HOME=/home/data/usr LOGDIR=$HOME/logs 一开始没在意, 保存后发现所有涉及这两个变量的条目无法正确执行了. 看了man, 确定crontab是支持变量的, 变量写的路径也正确. 无奈之中加了条echo进crontab中, 想看看这两个变量解析后的样子 echo $HOME $LOGDIR /home/data/usr $HOME/logs 原来crontab是不支持变量的互相引用的&#8230;&#8230;.]]></description>
			<content:encoded><![CDATA[<p style="text-indent:2em" >今天心血来潮, 整理起某台服务器的crontab， 添加了两个变量来代替冗长的路径</p>
<pre class="brush: bash; title: ;">
HOME=/home/data/usr
LOGDIR=$HOME/logs
</pre>
<p style="text-indent:2em" >一开始没在意, 保存后发现所有涉及这两个变量的条目无法正确执行了. 看了man, 确定crontab是支持变量的, 变量写的路径也正确. 无奈之中加了条echo进crontab中, 想看看这两个变量解析后的样子</p>
<pre class="brush: bash; title: ;">
echo $HOME $LOGDIR
/home/data/usr $HOME/logs
</pre>
<p>原来crontab是不支持变量的互相引用的&#8230;&#8230;.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.igigo.net/archives/118/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>clusterssh (Cssh) KDE下无法正确重排窗口的问题</title>
		<link>http://www.igigo.net/archives/103</link>
		<comments>http://www.igigo.net/archives/103#comments</comments>
		<pubDate>Thu, 02 Sep 2010 03:18:18 +0000</pubDate>
		<dc:creator>igi</dc:creator>
				<category><![CDATA[小砸碎]]></category>
		<category><![CDATA[clusterssh]]></category>
		<category><![CDATA[cssh]]></category>
		<category><![CDATA[kde]]></category>

		<guid isPermaLink="false">http://www.igigo.net/?p=103</guid>
		<description><![CDATA[cssh 是一个不错的多服务器登录工具， 采用平铺窗口的方式， 相比konsole的多tab, 更来得直观。 我也把它融合到自己的myssh中。 cssh在打开多窗口后， 会有个重排窗口使之不重叠的功能， 之前在gnome下用很正常， 但现在换到KDE， 却发现重排后依然没变化，乱且重叠了。搜了下，还真没找到啥解决方法， 想想cssh是perl写的， 就硬着头皮看看， 希望能解决这个小问题 稍微看了下函数， 发现有个与窗口重排有关的send_resizemove， 从函数名应该可以猜到它的作用。 整个cssh中， 只有一处地方调用了这函数. 大概在1367行。 logmsg( 2, &#34;Moving $server window&#34; ); send_resizemove( $servers{$server}{wid}, $current_x, $current_y, $config{internal_terminal_width}, #该参数指定了重排时窗口的新宽度 $config{internal_terminal_height} #该参数指定了重排时窗口的新高度 ); 我修改了代码中最后两个参数， 并打开logmsg的调试信息， 希望能找到无法重排及重新调整窗口大小的问题。 写死了新的窗口大小， 但出来的结果却是只有最后一个窗口会改变大小， 其他窗口都没变化， 这倒很有意思， 不是send_resizemove无法起作用， 而是无法在全部窗口起作用。 Tiling top left going bot right x:5 y:5, r:0 c:0 Moving [...]]]></description>
			<content:encoded><![CDATA[<p style="text-indent:2em" >cssh 是一个不错的多服务器登录工具， 采用平铺窗口的方式， 相比konsole的多tab,  更来得直观。 我也把它融合到自己的myssh中。 </p>
<p style="text-indent:2em" >cssh在打开多窗口后， 会有个重排窗口使之不重叠的功能， 之前在gnome下用很正常， 但现在换到KDE， 却发现重排后依然没变化，乱且重叠了。搜了下，还真没找到啥解决方法， 想想cssh是perl写的， 就硬着头皮看看， 希望能解决这个小问题</p>
<p style="text-indent:2em" >稍微看了下函数， 发现有个与窗口重排有关的send_resizemove， 从函数名应该可以猜到它的作用。 整个cssh中， 只有一处地方调用了这函数. 大概在1367行。</p>
<pre class="brush: perl; title: ;">
        logmsg( 2, &quot;Moving $server window&quot; );
        send_resizemove(
            $servers{$server}{wid},
            $current_x, $current_y,
            $config{internal_terminal_width},    #该参数指定了重排时窗口的新宽度
            $config{internal_terminal_height}    #该参数指定了重排时窗口的新高度
        );
</pre>
<p style="text-indent:2em" >我修改了代码中最后两个参数， 并打开logmsg的调试信息， 希望能找到无法重排及重新调整窗口大小的问题。 写死了新的窗口大小， 但出来的结果却是只有最后一个窗口会改变大小， 其他窗口都没变化， 这倒很有意思， 不是send_resizemove无法起作用， 而是无法在全部窗口起作用。</p>
<pre class="brush: bash; title: ;">
Tiling top left going bot right
x:5 y:5, r:0 c:0
Moving 15.238.122.15  window
Moving window 65011726 to x:5 y:5 (size x:488 y:242)
x:498 y:5, r:0 c:1
Moving 15.238.122.16  window
Moving window 88080398 to x:498 y:5 (size x:488 y:242)
x:991 y:5, r:0 c:2
Moving 15.238.122.17  window
Moving window 75497486 to x:991 y:5 (size x:488 y:242)
x:1484 y:5, r:0 c:3
Moving 15.238.122.18  window
Moving window 62914574 to x:1484 y:5 (size x:488 y:242)
x:1977 y:5, r:0 c:4
Moving 115.238.122.19  window
Moving window 83886094 to x:1977 y:5 (size x:488 y:242)
x:2470 y:5, r:0 c:5
Moving 15.238.122.20  window
Moving window 92274702 to x:2470 y:5 (size x:488 y:242)
x:5 y:252, r:1 c:0
Moving 15.238.122.22  window
Moving window 77594638 to x:5 y:252 (size x:488 y:242)
x:498 y:252, r:1 c:1
Moving 15.238.122.23  window
Moving window 67108878 to x:498 y:252 (size x:488 y:242)
x:991 y:252, r:1 c:2
Moving 15.238.122.24  window
Moving window 69206030 to x:991 y:252 (size x:488 y:242)
x:1484 y:252, r:1 c:3
Moving 15.238.122.25  window
Moving window 73400334 to x:1484 y:252 (size x:488 y:242)
x:1977 y:252, r:1 c:4
Moving 15.238.122.26  window
Moving window 71303182 to x:1977 y:252 (size x:488 y:242)
x:2470 y:252, r:1 c:5
Moving 15.238.122.27  window
Moving window 81788942 to x:2470 y:252 (size x:488 y:242)
x:5 y:499, r:2 c:0
Moving 15.238.122.29  window
Moving window 79691790 to x:5 y:499 (size x:488 y:242)
x:498 y:499, r:2 c:1
Moving 15.238.122.20  window
Moving window 94371854 to x:498 y:499 (size x:488 y:242)
x:991 y:499, r:2 c:2
Moving 15.238.122.21  window
Moving window 90177550 to x:991 y:499 (size x:488 y:242)
x:1484 y:499, r:2 c:3
Moving 15.238.122.22  window
Moving window 96469006 to x:1484 y:499 (size x:488 y:242)
x:1977 y:499, r:2 c:4
Moving 15.238.122.23  window
Moving window 85983246 to x:1977 y:499 (size x:488 y:242)
x:2470 y:499, r:2 c:5
Moving 15.238.122.24  window
Moving window 111149070 to x:2470 y:499 (size x:488 y:242)
Setting focus on 15.238.122.24
Setting focus on 15.238.122.23
Setting focus on 15.238.122.22
Setting focus on 15.238.122.21
Setting focus on 15.238.122.20
Setting focus on 15.238.122.29
Setting focus on 15.238.122.27
Setting focus on 15.238.122.26
Setting focus on 15.238.122.15
Setting focus on 15.238.122.24
Setting focus on 15.238.122.23
Setting focus on 15.238.122.22
Setting focus on 15.238.122.20
Setting focus on 15.238.122.19
Setting focus on 15.238.122.18
Setting focus on 15.238.122.17
Setting focus on 15.238.122.16
Setting focus on 15.238.122.15
Sending console to front
</pre>
<p style="text-indent:2em" >这是cssh的调试信息中与窗口重排相关的部分， 最后的Setting focus 提示了我， 当前是重排所有窗口后， 再把焦点逐个定位到每个窗口(相当于鼠标点中的窗口状态)， 是否在KDE下没有做这一步就无法调整大小?  根据Setting focus， 我找到了cssh中 相关的代码</p>
<pre class="brush: perl; title: ;">
    # Now remap in right order to get overlaps correct
    if ( $config{window_tiling_direction} =~ /right/i ) {
        foreach my $server ( reverse(@hosts) ) {
            logmsg( 2, &quot;Setting focus on $server&quot; );
            $xdisplay-&gt;req( 'MapWindow', $servers{$server}{wid} );

            # flush every time and wait a moment (The WMs are so slow...)
            $xdisplay-&gt;flush();
            select( undef, undef, undef, 0.1 );    # sleep for a mo
        }
    }
    else {
        foreach my $server (@hosts) {
            logmsg( 2, &quot;Setting focus on $server&quot; );
            $xdisplay-&gt;req( 'MapWindow', $servers{$server}{wid} );

            # flush every time and wait a moment (The WMs are so slow...)
            $xdisplay-&gt;flush();
            select( undef, undef, undef, 0.1 );    # sleep for a mo
        }
    }
</pre>
<p style="text-indent:2em" >不难看出， &#8216;$xdisplay->req( &#8216;MapWindow&#8217;, $servers{$server}{wid} );&#8217; 这一句就是我要的， $servers{$server}{wid} 就是窗口的ID, 依葫芦画瓢， 我加了这么一句到send_resizemove的函数调用之前</p>
<pre class="brush: perl; title: ;">
       logmsg( 2, &quot;Moving $server window&quot; );
       $xdisplay-&gt;req( 'MapWindow', $servers{$server}{wid} );
        send_resizemove(
            $servers{$server}{wid},
            $current_x, $current_y,
            $config{internal_terminal_width},    #该参数指定了重排时窗口的新宽度
            $config{internal_terminal_height}    #该参数指定了重排时窗口的新高度
        );
</pre>
<p style="text-indent:2em" >很幸运的， 确实如我所想， 终于能在KDE下正确重排窗口了！！  </p>
]]></content:encoded>
			<wfw:commentRss>http://www.igigo.net/archives/103/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ssh无法通过公钥登录的问题</title>
		<link>http://www.igigo.net/archives/67</link>
		<comments>http://www.igigo.net/archives/67#comments</comments>
		<pubDate>Thu, 25 Mar 2010 10:30:36 +0000</pubDate>
		<dc:creator>igi</dc:creator>
				<category><![CDATA[小砸碎]]></category>
		<category><![CDATA[key]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ssh]]></category>

		<guid isPermaLink="false">http://www.igigo.net/?p=67</guid>
		<description><![CDATA[帮一师弟解决一个无法通过公钥登录ssh服务器问题, 顺便总结下 现象: test帐号使用key无法登录某ssh服务器, 而同机器下的test2帐号却可以登录, 两个帐号都可以通过密码登录 在排查了所有配置错误的可能后, 初步怀疑test帐号的权限设置出问题 test@client:~$ ls -l ~/.ssh/ -rw------- 1 test test 1675 2010-03-25 15:15 id_rsa test@server:~$ ls -l ~/.ssh/ -rw-r--r-- 1 test test 396 2010-03-25 15:15 authorized_keys 查看了客户端及服务器端的.ssh目录下的公钥与私钥权限, 可以看出, 并没有问题 私钥必须是600权限, 而公钥至少是644或者更严格的权限, 这都符合, 但依然无法登录 test@server:~$ ls -la ~ &#124; grep -w .ssh drwxr-xr-x 2 test test 4.0K 12-23 16:59 .ssh [...]]]></description>
			<content:encoded><![CDATA[<p>帮一师弟解决一个无法通过公钥登录ssh服务器问题, 顺便总结下</p>
<p>现象: test帐号使用key无法登录某ssh服务器, 而同机器下的test2帐号却可以登录, 两个帐号都可以通过密码登录</p>
<p><span style="color: #008000;">在排查了所有配置错误的可能后</span>, 初步怀疑test帐号的权限设置出问题</p>
<pre class="brush: bash; title: ;">
test@client:~$ ls -l ~/.ssh/
-rw------- 1 test test   1675 2010-03-25 15:15 id_rsa
</pre>
<pre class="brush: bash; title: ;">
test@server:~$ ls -l ~/.ssh/
-rw-r--r-- 1 test test    396 2010-03-25 15:15 authorized_keys
</pre>
<p>查看了客户端及服务器端的.ssh目录下的公钥与私钥权限, 可以看出, 并没有问题<br />
私钥必须是600权限, 而公钥至少是644或者更严格的权限, 这都符合, 但依然无法登录</p>
<pre class="brush: bash; title: ;">
test@server:~$ ls -la ~ | grep -w .ssh
drwxr-xr-x  2 test  test  4.0K 12-23 16:59 .ssh
</pre>
<p>查看了服务器端的.ssh目录权限, 是755, 也是没问题的, ssh服务器要求在使用key登录时.ssh目录的权限必须是其他用户不可写。<br />
一开始实在想不明为啥test2帐号使用key可以登录,test帐号使用key无法登录, ssh_config和sshd_config在检查了多遍后确实没有问题, 最后在服务器端对比两个帐号的不同时, 发现了可疑的地方</p>
<pre class="brush: bash; title: ;">
$ls -l /home/
drwxrwxrwx   3 test test 4096 2009-12-31 17:31 test
drwxr-xr-x   6 test2 test2 4096 2010-03-23 15:59 test2
</pre>
<p>两个帐号的home目录权限不同, test帐号是777, test2帐号是755, 会不会是这里不同导致的? 在服务器端把test目录修改成777后, 解决问题</p>
<h3>为啥home目录的权限也会影响ssh的key登录?</h3>
<p>
ssh服务器的key方式登录对权限要求严格。对于客户端: 私钥必须为600权限或者更严格权限(400), 一旦其他用户可读, 私钥就不起作用(如640), 表现为系统认为不存在私钥<br />
对于服务器端: 要求必须公钥其他用户不可写, 一旦其他用户可写(如660), 就无法用key登录, 表现为:Permission denied (publickey).<br />
同时要求.ssh目录其他用户不可写,一旦其他用户可写(如770), 就无法使用key登录, 表现为:Permission denied (publickey).</p>
<h3>但为什么home目录的可写也影响到ssh使用key登录?</h3>
<p>我们知道linux下目录也是文件, 目录其他用户可写,代表其他用户可以删除目录里的所有文件或子目录,重命名目录下的所有文件或子目录.<br />
home目录的可写,表示其他用户对.ssh子目录也有改写的权限(删除或重命令),也就导致ssh判断.ssh为其他用户可写, 拒绝使用key登录</p>
]]></content:encoded>
			<wfw:commentRss>http://www.igigo.net/archives/67/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>搭建WordPress的点滴</title>
		<link>http://www.igigo.net/archives/18</link>
		<comments>http://www.igigo.net/archives/18#comments</comments>
		<pubDate>Fri, 05 Feb 2010 19:11:45 +0000</pubDate>
		<dc:creator>igi</dc:creator>
				<category><![CDATA[小砸碎]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[sqlite]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.igigo.net/?p=18</guid>
		<description><![CDATA[搭建Wordpress]]></description>
			<content:encoded><![CDATA[<p>终于弄好了自己的个人空间了，有了wordpress，真是方便多了，之前还想自己写一套简单的blog，但想想还是算了，还是留点时间多折腾点其他事情吧。</p>
<p>出于方便移植的考虑，我抛弃了wordpress的默认数据库mysql，改用了sqlite，需要安装pdo-for-wordpress, 倒也简单，php5默认就有pdo模块，需要另外装的就是php5-sqlite吧。</p>
<p>折腾好了后，再捣鼓捣鼓主题和页面设置，我的blog就人模人样拉。不过总觉得慢，200ms的延时，但访问时apache进程总是有几秒钟处于D状态，我的vps倒也没什么负载，我怀疑是真实主机的io太高导致的，没办法，只能自己尽量提高自己blog的速度了。</p>
<p>搜了下，有个国人写的加速插件<a href="http://www.storyday.com/tag/cos-html-cache" target="_blank">cos-html-cache</a>，原理就是把生成一份静态html来提高速度吧，看起来不错，我就装上了，确实速度有些许提高，还是有点欣慰的。</p>
<p>以后就得多写写心得。</p>
<p>附：整个过程还是遇到不少小问题的<br />
1.Warning: implode() [function.implode]: Invalid arguments passed in /wp-includes/post.php<br />
发生在我定义新页面时，搜了下，还不少人遇到，也有别人提供的解决方法<br />
编辑/wp-includes/post.php</p>
<p>把以下语句</p>
<pre class="brush: php; title: ;">
$check_sql = &quot;SELECT post_name FROM $wpdb-&amp;gt;posts WHERE post_name = %s AND post_type IN ( '&quot; . implode(&quot;', '&quot;, $wpdb-&amp;gt;escape($hierarchical_post_types)) . &quot;' ) AND ID != %d AND post_parent = %d LIMIT 1&quot;;
</pre>
<p>改为</p>
<pre class="brush: php; title: ;">
$hierarchical_post_types_string = implode(&quot;', '&quot;, $hierarchical_post_types);
$hierarchical_post_types_string = addslashes($hierarchical_post_types_string);
$check_sql = &quot;SELECT post_name FROM $wpdb-&amp;gt;posts WHERE post_name = %s AND post_type IN ( '&quot; . $hierarchical_post_types_string . &quot;' ) AND ID != %d AND post_parent = %d LIMIT 1&quot;;
</pre>
<p>出自:<a href="http://wordpress-hacks.com/warning-implode-function-implode-invalid-arguments-passed-in-wp-includespost-php-on-line-1762.php">http://wordpress-hacks.com/warning-implode-function-implode-invalid-arguments-passed-in-wp-includespost-php-on-line-1762.php</a></p>
<p>2..htaccess: RewriteEngine not allowed here</p>
<p>开启了伪静态urls后，访问时就出现500错误，看了下error-log,提示.htaccess: RewriteEngine not allowed here<br />
先确定了Rewrite模块在apache加载了，后来还是搜到了答案，编辑apache配置，在对应的vhost中修改AllowOverride FileInfo</p>
<p>附上AllowOverride的文档</p>
<pre class="brush: plain; title: ;">
AllowOverride 指令
说明    确定允许存在于.htaccess文件中的指令类型
语法    AllowOverride All|None|directive-type [directive-type] ...
默认值  AllowOverride All
作用域  directory
状态    核心(C)
模块    core

当服务器发现一个.htaccess文件(由AccessFileName指定)时，它需要知道在这个文件中声明的哪些指令能覆盖在此之前指定的配置指令。
仅允许存在于&lt;Directory&gt;配置段
AllowOverride仅在不包含正则表达式的&lt;Directory&gt;配置段中才是有效的。在&lt;Location&gt;, &lt;DirectoryMatch&gt;, &lt;Files&gt;配置段中都是无效的。

如果此指令被设置为None ，那么.htaccess文件将被完全忽略。事实上，服务器根本不会读取.htaccess文件。

当此指令设置为 All时，所有具有&quot;.htaccess&quot;作用域的指令都允许出现在.htaccess文件中。

directive-type可以是下列各组指令之一：

AuthConfig
    允许使用与认证授权相关的指令(AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, Require, 等)。
FileInfo
    允许使用控制文档类型的指令(DefaultType, ErrorDocument, ForceType, LanguagePriority, SetHandler, SetInputFilter, SetOutputFilter, mod_mime中的 Add* 和 Remove* 指令等等)、控制文档元数据的指令(Header, RequestHeader, SetEnvIf, SetEnvIfNoCase, BrowserMatch, CookieExpires, CookieDomain, CookieStyle, CookieTracking, CookieName)、mod_rewrite中的指令(RewriteEngine, RewriteOptions, RewriteBase, RewriteCond, RewriteRule)和mod_actions中的Action指令。
Indexes
    允许使用控制目录索引的指令(AddDescription, AddIcon, AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore, IndexOptions, ReadmeName, 等)。
Limit
    允许使用控制主机访问的指令(Allow, Deny, Order)。
Options[=Option,...]
    允许使用控制指定目录功能的指令(Options和XBitHack)。可以在等号后面附加一个逗号分隔的(无空格的)Options选项列表，用来控制允许Options指令使用哪些选项。

例如以下指令只允许在.htaccess中使用AuthConfig和Indexes组的指令：

AllowOverride AuthConfig Indexes

不在这两组中的指令将会导致服务器产生一个内部错误。
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.igigo.net/archives/18/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

