FreeBSD

升级Apache2.0.55到2.0.63、PHP4.4.2到5.2.5

继续通过FreeBSD的Ports方式升级。在升级Apache时会遇到两次中止,第一次是发现有老的perl版本存在,提示:An older version of lang/perl5.8 is already installed (perl-5.8.7_2) You may wish to ``make deinstall'' and install this port again by ``make reinstall'' to upgrade it properly. If you really wish to overwrite the old port of lang/perl5.8 without deleting it first, set the variable "FORCE_PKG_REGISTER" in your environment or the "make install" command line. 我选择了第一种做法,虽然过程有些啰嗦,但更直观些。卸载perl-5.8.7_2安装perl-5.8.8_1之后继续重复安装Apache,遇到了第二次中止,提示老版本的Apache存在,我的做法和处理perl的一样,卸载老版本,安装新版本。(很笨哟)在此之前我把/usr/local/etc目录备份了一下,结果发现好像用不上,新版本的安装并未覆盖或修改httpd.conf。重启Apache (/usr/local/sbin/apachectl restart),再刷新phpinfo,Apache的版本已经更新。

ftpd与lukemftpd

小站还没正式推广,垃圾留言(Spam)已经开始频频光顾。于是就下载安装Drupal的CAPTCHA 模块,想通过让评论者问答算数题的方式来确定是否是恶意发帖程序所为,以屏蔽恶意留言。安装本来应该很简单,但是在上传文件然后进入模块管理时发现有这样的错误提示:failed to open dir: Permission denied in /xxx/xxx/xxxx/drupal/includes/file.inc。奇怪,通过FTP检查文件夹属性,发现刚刚传到服务器端的captcha目录属性是750,Public组没有读和执行的权限,而我以前上传的Module文件目录则大都是755。思前想后,明白了引起故障的原因。我在升级FreeBSD 6.1-Release到6.3-STABLE之后,顺便让ftp服务采用了lukemftpd,应该是它设置的问题了。不想再去搞清lukemftpd的配置,直接SSH登录,修改inetd.conf,恢复采用ftpd的服务,然后再重新加载 inetd 配置文件 ‘# /etc/rc.d/inetd reload’,再用FTP登录,再上传,问题得到解决。

升级FreeBSD 6.1-Release到6.3-STABLE

前天想安装Drupal的最新版本(6.0),目前服务器的软件环境足以支撑,但某些配置并非推荐版本。官方站点Recommended: Apache ;PHP 5.2 or higher;MySQL 4.1 or MySQL 5.0。Required: PHP version 4.3.5 or higher。而我目前的配置版本是:FreeBSD 6.1 Release; Apache/2.0.55; PHP/4.4.2;MySQL 4.1.16, PHP部分不甚理想,需要升级。再查相关网站,其它软件也都有了相应的升级。干脆,除了MySQL,其它的都升升吧。先从最基础的操作系统FreeBSD入手。

我日常办公和个人应用的电脑跟随主流,都是Windows XP,至今未体验过FreeBSD的桌面。两年前装服务器时借助Google,稀里糊涂算是把FreeBSD+Apache+PHP+MySQL给搞定了,很多操作是边查资料边进行,知其然不知其所以然。这个组合非常稳定,后来几乎没再进行过别的操作,现在要升级,很多资料还得重新查,真后悔当初没做些备忘。所以从现在开始,要做好记录工作。下面是升级FreeBSD 6.1-Release到6.3-STABLE的部分备忘。

步骤(我操作时是以子非鱼所写的步骤为蓝本,建议参考官方网站的手册部分,有更详细的解释):

聚合内容