<?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"
	>

<channel>
	<title>刀刀 &#124; Python,Nginx,Linux,FreeBSD</title>
	<atom:link href="http://tech.foolpig.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://tech.foolpig.com</link>
	<description></description>
	<pubDate>Mon, 01 Dec 2008 06:35:03 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6</generator>
	<language>en</language>
			<item>
		<title>php-fpm+nginx配置问题</title>
		<link>http://tech.foolpig.com/2008/12/01/nginx-php-fpm/</link>
		<comments>http://tech.foolpig.com/2008/12/01/nginx-php-fpm/#comments</comments>
		<pubDate>Mon, 01 Dec 2008 06:31:42 +0000</pubDate>
		<dc:creator>foolpig</dc:creator>
		
		<category><![CDATA[东写西读]]></category>

		<category><![CDATA[nginx]]></category>

		<category><![CDATA[php-fpm]]></category>

		<guid isPermaLink="false">http://tech.foolpig.com/2008/12/01/nginx-php-fpm/</guid>
		<description><![CDATA[一、启动php-fpm问题，查看日志文件，此日志文件是在php-fpm.conf中所定义的
1、Dec 01 11:01:07.339056 [WARNING] fpm_stdio_child_said(), line 158: child 25237 (pool default) said into stderr: &#34;Dec 01 11:01:07.336368 [ERROR] fpm_... ]]></description>
			<content:encoded><![CDATA[<p>一、启动php-fpm问题，查看日志文件，此日志文件是在php-fpm.conf中所定义的</p>
<p>1、Dec 01 11:01:07.339056 [WARNING] fpm_stdio_child_said(), line 158: child 25237 (pool default) said into stderr: &quot;Dec 01 11:01:07.336368 [ERROR] fpm_unix_init_child(), line 168: <font color="#ff0000">setrlimit(RLIMIT_NOFILE) failed: Invalid argument (22)&quot;</font></p>
<p>A：修改配置文件：</p>
<p>vi /etc/sysctl.conf</p>
<p>输入以下内容：</p>
<p>kernel.shmmax = 134217728</p>
<p>然后执行以下命令使配置生效：</p>
<p>sbin/sysctl –p</p>
<p>2、启动仍然失败，可是在日志中并没有详细记录出错信息，只有：</p>
<p>Dec 01 11:03:07.930313 [NOTICE] fpm_children_make(), line 352: child 25345 (pool default) started   <br />Dec 01 11:03:07.934274 [NOTICE] fpm_children_make(), line 352: child 25346 (pool default) started    <br />Dec 01 11:03:07.937472 [NOTICE] fpm_children_make(), line 352: child 25347 (pool default) started    <br />Dec 01 11:03:07.942833 [NOTICE] fpm_children_make(), line 352: child 25348 (pool default) started    <br />Dec 01 11:03:07.943068 [NOTICE] <font color="#ff0000">fpm_event_loop(), line 105: libevent: entering main loop</font></p>
<p>A：此问题的答案，google了好久都没找打解决办法，后来灵光一闪，上面说main loop，是不是什么地方不一致导致循环呢？</p>
<p>检查得到php-fpm.conf文件中的pid file被定义在</p>
<p>Pid file   <br /> &lt;value name=&quot;pid_file&quot;&gt;/opt/php/logs/php-fpm.pid&lt;/value&gt;</p>
<p>而php-fpm启动文件（/opt/php/sbin/php-fpm）中定义的php_fpm_PID=/opt/php/logs/php-fpm.pid</p>
<p>修改php-fpm.conf配置文件中的位置与启动脚本一致，然后执行/opt/php/sbin/php-fpm start成功 ^_^</p>
<p>二、nginx部分</p>
<p>1、No input file specified 报错</p>
<p>A、在网上搜到的都是修改php.ini文件中的doc_root，将其注释掉，后来发现根本没用，摸索N久之后，终于发现解决办法：</p>
<p>fcgi.conf文件（有些直接使用nginx的fastcgi_params文件），其中要有如下一行：</p>
<p>fastcgi_param&#160;&#160;&#160; SCRIPT_FILENAME&#160;&#160;&#160;&#160;&#160; $document_root$fastcgi_script_name;</p>
<p>另外要注意虚拟主机的配置文件：</p>
<p>我以前的配置文件如下：</p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; location / {</p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; root&#160;&#160; /webserver/web;    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; index&#160; index.php index.html index.htm; </p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; if (-f $request_filename/index.html){   <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; rewrite (.*) $1/index.html break;    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; }    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; if (-f $request_filename/index.php){    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; rewrite (.*) $1/index.php;    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; }    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; if (!-f $request_filename){    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; rewrite (.*) /index.php;    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; }    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; } </p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; error_page&#160; 404&#160;&#160;&#160; <a href="http://www.netbig.com/error/error404.htm;">http://www.netbig.com/error/error404.htm;</a></p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; location ~ \.php$ {   <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; fastcgi_pass&#160;&#160; unix:/var/run/fcgi/php-cgi.sock;    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; fastcgi_index&#160; index.php;    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; fastcgi_param&#160; SCRIPT_FILENAME&#160; /webserver/web$fastcgi_script_name;    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; fastcgi_param&#160; PATH_INFO $fastcgi_script_name;    </p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; include&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; fcgi.conf;    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; }</p>
<p>&#160;</p>
<p>修改成如下：</p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; <font color="#ff0000">root&#160;&#160; /webserver/web;</font> </p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; location / {   <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; index&#160; index.php index.html index.htm; </p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; if (-f $request_filename/index.html){   <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; rewrite (.*) $1/index.html break;    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; }    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; if (-f $request_filename/index.php){    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; rewrite (.*) $1/index.php;    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; }    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; if (!-f $request_filename){    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; rewrite (.*) /index.php;    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; }    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; } </p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; error_page&#160; 404&#160;&#160;&#160; <a href="http://www.netbig.com/error/error404.htm;">http://www.netbig.com/error/error404.htm;</a></p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; location ~ \.php$ {   </p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; fastcgi_pass&#160;&#160; unix:/var/run/fcgi/php-cgi.sock;    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; fastcgi_index&#160; index.php;    <br /><font color="#ff0000">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; #fastcgi_param&#160; SCRIPT_FILENAME&#160; /webserver/web$fastcgi_script_name;     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; #fastcgi_param&#160; PATH_INFO $fastcgi_script_name;</font>    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; include&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; fcgi.conf;    <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; }</p>
<p>改动的地方是将root部分从location /迁移出来，或者放到location ~ \.php$部分，这个是与spawn-fcgi不同的地方</p>
<p>并注释掉fastcgi_param</p>
<p>如有多个虚拟主机，只需要修改server_name即可，其余部分都差不多</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.foolpig.com/2008/12/01/nginx-php-fpm/feed/</wfw:commentRss>
		</item>
		<item>
		<title>MySQL存储文件只有frm的解决办法</title>
		<link>http://tech.foolpig.com/2008/10/30/mysql-frm-repair/</link>
		<comments>http://tech.foolpig.com/2008/10/30/mysql-frm-repair/#comments</comments>
		<pubDate>Thu, 30 Oct 2008 07:48:13 +0000</pubDate>
		<dc:creator>foolpig</dc:creator>
		
		<category><![CDATA[东写西读]]></category>

		<category><![CDATA[frm修复]]></category>

		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://tech.foolpig.com/2008/10/30/mysql-frm-repair/</guid>
		<description><![CDATA[很郁闷的是一个数据库不知道咋回事，其中的一个表居然只有frm文件，MYI和MYD文件不见了。。。
还好进数据库能够查询出来，庆幸 –_-!!
那有没有办法把找个表恢复呢？
询问枕头说，能够dump... ]]></description>
			<content:encoded><![CDATA[<p>很郁闷的是一个数据库不知道咋回事，其中的一个表居然只有frm文件，MYI和MYD文件不见了。。。</p>
<p>还好进数据库能够查询出来，庆幸 –_-!!</p>
<p>那有没有办法把找个表恢复呢？</p>
<p>询问枕头说，能够dump出来应该可以恢复</p>
<p>可用以下方法：</p>
<p>一、CREATE TABLE 方法 </p>
<p>整表复制 # create table 新表 select * from 旧表;    <br />结构复制 # create table 新表 select * from 旧表 where 1&lt;&gt;1; </p>
<p>二、INSERT INTO 方法 </p>
<p>得到建表语句 # show create table 旧表;    <br />新建表     <br />复制数据到新表 # insert into 新表 select * from 旧表;</p>
<p>得到新表后drop掉旧表，然后更名新表为旧表 </p>
<p>alter table 新表 rename 旧表</p>
<p>不过注意再执行上面的步骤的时候先记得讲表导出备份</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.foolpig.com/2008/10/30/mysql-frm-repair/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Perl CPAN安装报错CPAN::Modulelist的解决办法</title>
		<link>http://tech.foolpig.com/2008/10/22/cpan-error-modulelist/</link>
		<comments>http://tech.foolpig.com/2008/10/22/cpan-error-modulelist/#comments</comments>
		<pubDate>Wed, 22 Oct 2008 02:30:12 +0000</pubDate>
		<dc:creator>foolpig</dc:creator>
		
		<category><![CDATA[Linux/Unix]]></category>

		<category><![CDATA[cpan]]></category>

		<category><![CDATA[error]]></category>

		<category><![CDATA[Modulelist]]></category>

		<guid isPermaLink="false">http://tech.foolpig.com/?p=271</guid>
		<description><![CDATA[今天安装DBD::mysql，以前都是顺顺利利的，一点事都没有，今天莫名出现：
Warning: Your /root/.cpan/sources/modules/02packages.details.txt.gz does not contain a Last-Updated header.
Please check the validity of the index file by c... ]]></description>
			<content:encoded><![CDATA[<p>今天安装DBD::mysql，以前都是顺顺利利的，一点事都没有，今天莫名出现：<br />
<code>Warning: Your /root/.cpan/sources/modules/02packages.details.txt.gz does not contain a Last-Updated header.<br />
Please check the validity of the index file by comparing it to more<br />
than one CPAN mirror. I'll continue but problems seem likely to<br />
happen.<br />
Going to read /root/.cpan/sources/modules/03modlist.data.gz<br />
Can't locate object method "data" via package "CPAN::Modulelist" (perhaps you forgot to load "CPAN::Modulelist"?) at (eval 20) line 1.</code></p>
<p>也不知道哪出问题了<br />
直接在perl -MCPAN -e shell下执行install Bundle::DBD::mysql<br />
出错<br />
强制执行force install Bundle::DBD::mysql<br />
一样的错误<br />
下载tar包安装，出错，rpm包安装也出错，真郁闷了</p>
<p>看错误信息，难道是CPAN::Modulelist这个模块没装？下载这个模块，同样安装出错。。。 </p>
<p>郁闷了。。。<br />
对比发现~/.cpan目录下少了很多文件<br />
难道是这个的问题？<br />
删除掉，然后直接在perl -MCPAN -e shell中执行reload index<br />
装了差不多一个小时，cpan在线安装就这不好，超级慢，检测的东西超多，所以我还是喜欢下载包进行安装，不过千万不要执行make test步骤，要不慢死<br />
然后执行install Bundle::CPAN<br />
最后执行reload CPAN即可正常通过命令行install MODULES</p>
<p>再安装DBD::mysql一切顺利<br />
进入cpan检查安装情况：<br />
<code>cpan[1]> m DBD::mysql<br />
CPAN: Storable loaded ok (v2.15)<br />
Going to read /root/.cpan/Metadata<br />
  Database was generated on Tue, 21 Oct 2008 18:26:52 GMT<br />
Module id = DBD::mysql<br />
    DESCRIPTION  MySQL driver for DBI<br />
    CPAN_USERID  CAPTTOFU (Patrick Galbraith
<patg@patg.net>)<br />
    CPAN_VERSION 4.008<br />
    CPAN_FILE    C/CA/CAPTTOFU/DBD-mysql-4.008.tar.gz<br />
    DSLIP_STATUS RmcO? (released,mailing-list,C,object-oriented,)<br />
    MANPAGE      DBD::mysql - MySQL driver for the Perl5 Database Interface (DBI)<br />
    INST_FILE    /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/DBD/mysql.pm<br />
    INST_VERSION 4.008</code></p>
<p>OK ^_^</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.foolpig.com/2008/10/22/cpan-error-modulelist/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Django book中文</title>
		<link>http://tech.foolpig.com/2008/10/08/django-book/</link>
		<comments>http://tech.foolpig.com/2008/10/08/django-book/#comments</comments>
		<pubDate>Wed, 08 Oct 2008 02:30:44 +0000</pubDate>
		<dc:creator>foolpig</dc:creator>
		
		<category><![CDATA[Python]]></category>

		<category><![CDATA[django book]]></category>

		<guid isPermaLink="false">http://tech.foolpig.com/?p=269</guid>
		<description><![CDATA[网上搜罗了半天，就是没找到可供下载的Django book的中文文档，都是在线的，郁闷
不得已，自己做一个，方便查阅，免得某天不能上网，那还不的干瞪眼啊
下载链接在下面 ^_^
django_book_0.96_cn.rar... ]]></description>
			<content:encoded><![CDATA[<p>网上搜罗了半天，就是没找到可供下载的Django book的中文文档，都是在线的，郁闷<br />
不得已，自己做一个，方便查阅，免得某天不能上网，那还不的干瞪眼啊<br />
下载链接在下面 ^_^<br />
<a href="http://tech.foolpig.com/wp-content/uploads/django_book_0.96_cn.rar">django_book_0.96_cn.rar</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.foolpig.com/2008/10/08/django-book/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Nginx for Windows (win32)</title>
		<link>http://tech.foolpig.com/2008/09/21/nginx-for-windows-win32/</link>
		<comments>http://tech.foolpig.com/2008/09/21/nginx-for-windows-win32/#comments</comments>
		<pubDate>Sun, 21 Sep 2008 03:24:34 +0000</pubDate>
		<dc:creator>foolpig</dc:creator>
		
		<category><![CDATA[服务器]]></category>

		<category><![CDATA[nginx]]></category>

		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://tech.foolpig.com/?p=268</guid>
		<description><![CDATA[看了阿债同学的博客，以前就给我说过有个nginx for windows的版本Nginx for Windows (win32)
不过一直没去实验，也不知道情形如何，详细的可以去阿债的博客看看
  ... ]]></description>
			<content:encoded><![CDATA[<p>看了<a href="http://blog.declab.com/">阿债</a>同学的博客，以前就给我说过有个nginx for windows的版本<a href="http://www.kevinworthington.com/tag/nginx/">Nginx for Windows (win32)</a><br />
不过一直没去实验，也不知道情形如何，详细的可以去<a href="http://blog.declab.com/read.php/42.htm">阿债的博客</a>看看<br />
 <img src='http://tech.foolpig.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://tech.foolpig.com/2008/09/21/nginx-for-windows-win32/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
