众所周知,在生产环境下配置Apache+PHP 5环境或Nginx+PHP 5环境还是很复杂的,即大家熟悉的LAMP或NAMP架构,就算按照详细的部署文档来安装的话也是一个较长和麻烦的过程;但这一切在FreeBSD下用ports就简化了,本人感觉特别适应于开发环境,特将FreeBSD 8下的部署过程记录如下,方便与大家交流共享。 一、安装Apache2.2 cd /usr/ports/www/apache22 ◆去掉IPV6 ◆添加MySQL 安装完成后,需要编辑/etc/rc.conf文件,添加下面内容到/etc/rc.conf: apache22_enable="YES" 配置Apache 2.2 安装完成后,备份/usr/local/etc/apache22/httpd.conf文件: cp /usr/local/etc/apache22/httpd.conf /usr/local/etc/apache22/httpd.conf.bak 编辑/usr/local/etc/apache22/httpd.conf文件,以使Apache22 Server支持PHP: vim /usr/local/etc/apache22/httpd.conf 1.大约354行 在AddType application/x-gzip .gz .tgz下面添加以下内容: AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps 2.大约212行 添加'index.php' 到'DirectoryIndex' 主目录索引: DirectoryIndex index.php index.html 3.第152行 DocumentRoot "/home/www" #存放web的路径,根据自己需求更改 4.第178行 <Directory "/home/www"> #存放web的路径,这个根据自己需求更改 二、安装PHP 5.2 cd /usr/ports/lang/php52 make install clean 选择如下安装选项: ◆去掉IPV6 ◆添加CLI、CGI、APACHE、SUHOSION、FASTCGI、PATHINFO 三、安装PHP 5.2-extensions扩展 cd /usr/ports/lang/php52-extensions clean make config安装添加选项如下: 添加BZ2、CALENDAR、CTYPE、GD、GETTEXT、ICONV、MBSTRING、MCRYPT、MHASH、MYSQL、MYSQLI、OPENSSL、PCRE、POSIX、SESSION、SOCKETS、TOKENIZER、ZIP、ZLIB。 我在线上服务器的centos5.4下,一个个手动源码编译PHP 5的扩展包,感觉是件非常痛苦的事情;Apache如是,Nginx下亦如是;在FreeBSD 8下一切都简单了,这个过程有点长。 复制/usr/local/etc/php.ini-dist为/usr/local/etc/php.ini: cp /usr/local/etc/php.ini-dist /usr/local/etc/php.ini 四、安装ZendOptimizer cd /usr/ports/devel/ZendOptimizer 安装完成提示如下: ********************************************************************************
vim /usr/local/etc/php.ini /usr/local/etc/rc.d/apache22 restart <? |