浏览模式: 标准 | 列表 全部文章

091208小记

09年12月8日,注定是个不平凡的日子(怎么感觉是CCTV的套语?)!

天气:阴雨绵绵

事件:

14:15:挚爱手机诺基亚6120C被偷,纪念09.04.30-09.12.8(共计8个月8天)

14:50:去客户公司的公交车改道,google地图搜索给了我无言的打击,最终只好下车步行

15:40:客户对于作品不满意,很委婉地让我再做,再深入理解其公司的理念

19:40:距离选修课结束还有十分钟,隔壁哥们让我把我的CAD拷贝到他U盘里,结果我以400的错误方式直接把U盘插到了开关机按钮上,结局很悲惨,电脑瞬间关机,重启后桌面上辛苦完成的CAD图都没了

抱着乐观的心态,新下这篇日志,展望新一天的开始!

Tags: 生活

又开始喜欢上寂寞的黑夜

黑夜,静悄悄,又开始喜欢上这种坐在电脑前,敲着键盘,静悄悄地思考模式

分享1个Google Wave邀请[10/2/4更新]

10-2-4更新:今天登陆wave,只有最后1个邀请名额可用了。有需要的便宜请尽快联系我!

09-12-9更新:今天登陆wave一看发现google居然给了我19个邀请名额,留言中已经发出一个名额,剩下18个名额,有需要的朋友请留下邮箱。

关于Google Wave:http://baike.baidu.com/view/2494748.htm

需要邀请名额的朋友请留下你的gmail邮箱,格式可以如下:

mail#gmail.com (用#替代@,虽然gmail过滤垃圾邮件能力很强)

如何用wave?移步:Google Wave入门指南

使用wave必须是:firefox或者chrome浏览器,IE不支持

wave登陆:http://wave.google.com

google_wave_invite.jpg

大小: 23.09 K
尺寸: 300 x 194
浏览: 98 次
点击打开新窗口浏览全图

Tags: google, wave

解决:cannot execute binary file

linux系统下遇到cannot execute binary file的问题,一般由以下情况造成:

  1. 非root用户或者无执行权限
  2. 编译环境不同(程序由其他操作环境复制过来)

对于第一种情况,采用增加执行权限即可chmod +x program

对于第二种情况,建议将该程序二进制包拷贝过来,重新编译程序。因为我在实际操作过程中发现我将美国的VPS的整个操作系统环境打包后下载到本地服务器上解压后运行其中的程序会有如题所示问题出现,百思不得其解,系统都为centos5.2,最终发现是两者编译环境不同所致:

  • 美国VPS是AMD64位处理器
  • 本地服务器是INTEL32位处理器

这两者的硬件编译环境有所差别,导致了这个问题。当然,下载的某些程序非二进制包,可以直接执行的,但却出现该问题,也是因为内核匹配不了CPU,intel是x86的,amd是amd64或是32位版本,对应清楚下载。希望本文对看到的朋友有所帮助。

解决nginx中FastCGI的502 Bad Gateway错误

本博客一直运行正常,前段时间经常遇到502 Bad Gateway错误,web采用的是nginx,跑fastcgi,用php-fpm管理。当出现该问题,我采用重启php-cgi进程的方式(php-fpm restart),但总归不是长久之计,我通过检查排错,调整了配置文件(php-fpm.conf)中<value name="max_children">5</value>的值为10,而内存占用没有多大变化。保存配置文件并重启php-cgi,这样系统中的php-cgi进程为10个了。观察几天,再也没遇到502错误。注:因为本人主机是centos的vps主机,内存较小,故不配置更多的php-cgi进程。在实际生产环境中,你可根据硬件水平开启更多的进程!

恰好在我的运维群里孤竹朋友发了以下经验,故摘录。

1.FastCGI进程是否已经启动

2.FastCGI worker进程数是否不够
运行 netstat -anpo | grep "php-cgi" | wc -l 判断是否接近FastCGI进程,接近配置文件中设置的数值,表明worker进程数设置太少,请适当调整进程数
参见:http://blog.s135.com/post/361.htm

3.FastCGI执行时间过长
根据实际情况调高以下参数值
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;

4.FastCGI Buffer不够
nginx和apache一样,有前端缓冲限制,可以调整缓冲参数
fastcgi_buffer_size 32k;
fastcgi_buffers 8 32k;
参见:http://www.hiadmin.com/nginx-502-gateway-error%E4%B8%80%E4%BE%8B/

5.Proxy Buffer不够
如果你用了Proxying,调整
proxy_buffer_size  16k;
proxy_buffers      4 16k;
参见:http://www.ruby-forum.com/topic/169040

6.https转发配置错误
正确的配置方法
server_name www.mydomain.com;
location /myproj/repos {
set $fixed_destination $http_destination;
if ( $http_destination ~* ^https(.*)$ )
{
set $fixed_destination http$1;
}
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Destination $fixed_destination;
proxy_pass http://subversion_hosts;
}
参见:http://www.ruby-forum.com/topic/169040

Tags: nginx, fastcgi, 502

IIS5.1与6.0中Server Application Unavailabl...

Server Application Unavailable,这个问题让一些没遇到过这个问题的朋友非常苦恼。本文可以准确方便地解答该问题出现在IIS5.1与IIS6.0中的原因以及解决方法。


在iis5.1中出现这个问题,是因为先装了.netframework后装的iis造成asp.net没有在iis里正确的注册。解决办法就是在windows2000,xp,2003系统下运行:

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i

或者

aspnet_regiis -r 

这也就是为何你安装好后IIS5.1后发现.net的运行环境已经存在了

附微软官方.net 1.1安装包.net 2.0 安装包

而这个问题在windows 2003的服务中,我曾经懊恼了一段时间,不过最终还是解决了。只要分配给不同的网站程序各自的程序池即可(最简单就是.net1.1程序一个池,.net2.0程序一个池),但是运维网站增加的话,各自分开更利于出现问题不会“殃及池鱼”。

摘录:.net Framework 2.0的程序与.net Framework1.1(或1.0)的程序被放入同一个应用程序池(默认情况下放入DefaultAppPool池),也就是由同一个工作进程: w3wp.exe 进行管理,而单个工作进程是无法同时管理不同的程序(或者不同版本的程序)的。如果先访问.net framework 1.1的页面,则工作进程先加载并管理了 1.1版本的程序集,此时访问.net framework 2.0的web程序页面,Server Application Unavailable 错误就出来了。 反之,如果在默认应用程序池的w3wp.exe尚未启动前先访问了 2.0的web程序(此时应用程序集已经加载了.net framework2.0的Web程序集),再访问1.1或1.0的Web程序页面时,同样会出现“服务器应用程序不可用” 这样的中文提示。(您可以结束掉以前的w3wp.exe进行测试。)

Discuz! 6.0到Discuz! 7.1升级教程

朋友站点目前还是disucz 6.0程序,最近出现问题:首页只显示头部,无法完整显示。因为之前安装过首页四格插件,猜测是插件问题。无奈当初的改动备份不知道放在何处了。遂建议直接升级到discuz最新的7.1版(091030),而且官方自带了类“首页四格”的功能。

升级无法直接从6.0直接升级为7.1,只能按6.0->7.0->7.1升级

本文升级网址(放在二级目录):http://www.target.com/bbs/

从6.0升级为7.0见:

(视频)http://download.comsenz.com/teach/video/Discuz!6.0.0_to_Discuz!7.0.0_upgrade.zip

(图文)http://faq.comsenz.com/viewnews-450

升级到7.0后会出现头像没有导入ucenter中去,升级界面上提供的帖子中的导入程序不是十分完善,google了下,找到个网友提供的导入工具比较完善地解决了这个问题。

下载:lemon-upgrade-avatar.rar 文件未作任何修改,版权归原作者!

注意点:

除了以下2点修改外,其他不要修改,包括文件名(其实可以修改,方便起见就不修改了)

define ( 'UCENTER_ROOT', $__LPATH . '/uc_server/' );   //UCenter路径
define ( 'UCENTER_URL',  'http://www.target.com/bbs/uc_server/'); //UCenter URL

如果不出意外,导入头像过程中你会看到那些被导入的头像。如果有问题,会提示你,继续修改这两处参数即可。

从7.0升级为7.1见http://faq.comsenz.com/viewnews-862,都很套路的东西了。

Tags: discuz

打开apache列目录功能

 

客户端发送一个URL请求,但是相应的目录里面没有DirectoryIndex属性指定的文件名,那么可以使用mod_autoindex模块来列出该目录的文件名。

解决:编译Apache的时候包含mod_autoindex模块,然后参考下面的例子来设置Apache配置文件(httpd.conf):

打开列目录功能:Options +Indexes
关闭列目录功能:Options -Indexes 或者不写该项

例:

<Directory />
    Options FollowSymLinks
    AllowOverride None
     Options +Indexes
</Directory>