详解FreeBSD 8下部署Apache+MySQL+PHP 5(1)


【51CTO独家特稿】众所周知,在生产环境下配置Apache+PHP 5环境或Nginx+PHP 5环境还是很复杂的,即大家熟悉的LAMP或NAMP架构,就算按照详细的部署文档来安装的话也是一个较长和麻烦的过程;但这一切在FreeBSD下用ports就简化了,本人感觉特别适应于开发环境,特将FreeBSD 8下的部署过程记录如下,方便与大家交流共享。


推荐专题:企业内网开发环境部署与管理全攻略(FreeBSD+PHP)


一、安装Apache2.2


  1. cd /usr/ports/www/apache22  
  2. make install clean 

◆去掉IPV6


◆添加MySQL


安装完成后,需要编辑/etc/rc.conf文件,添加下面内容到/etc/rc.conf:


  1. apache22_enable="YES" 

配置Apache 2.2


安装完成后,备份/usr/local/etc/apache22/httpd.conf文件:


  1. cp /usr/local/etc/apache22/httpd.conf /usr/local/etc/apache22/httpd.conf.bak
  2.  

编辑/usr/local/etc/apache22/httpd.conf文件,以使Apache22 Server支持PHP:


  1. vim /usr/local/etc/apache22/httpd.conf 

1.大约354行


在AddType application/x-gzip .gz .tgz下面添加以下内容:


  1. AddType application/x-httpd-php .php  
  2. AddType application/x-httpd-php-source .phps 

2.大约212行


添加'index.php' 到'DirectoryIndex' 主目录索引:


  1. DirectoryIndex index.php index.html 

3.第152行


DocumentRoot "/home/www"  #存放web的路径,根据自己需求更改


4.第178行


<Directory "/home/www">   #存放web的路径,这个根据自己需求更改


二、安装PHP 5.2


  1. cd /usr/ports/lang/php52  
  2. make install clean 

选择如下安装选项:


◆去掉IPV6


◆添加CLI、CGI、APACHE、SUHOSION、FASTCGI、PATHINFO


三、安装PHP 5.2-extensions扩展


  1. cd /usr/ports/lang/php52-extensions  
  2. make config  
  3. make install 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:


  1. cp /usr/local/etc/php.ini-dist /usr/local/etc/php.ini 

四、安装ZendOptimizer


  1. cd /usr/ports/devel/ZendOptimizer  
  2. make install clean 

安装完成提示如下:


  1. ********************************************************************************  
  2. You have installed the ZendOptimizer package.  
  3. Edit /usr/local/etc/php.ini and add:  
  4. [zend]  
  5. zend_optimizer.optimization_level=15 
  6. zend_extension_manager.optimizer="/usr/local/lib/php/20060613/Optimizer" 
  7. zend_extension_manager.optimizer_ts="/usr/local/lib/php/20060613/Optimizer_TS" 
  8. zend_extension="/usr/local/lib/php/20060613/ZendExtensionManager.so" 
  9. zend_extension_ts="/usr/local/lib/php/20060613/ZendExtensionManager_TS.so" 
  10. ********************************************************************* 

编辑php.ini,复制以上[Zend]内容到文本末尾:


  1. vim /usr/local/etc/php.ini 

重新启动你的Web Server.


  1. /usr/local/etc/rc.d/apache22 restart 

测试Apche Server对PHP和ZendOptimizer支持,在/home/www里面建立一个index.php,输入以下内容:


  1. <? 
  2. phpinfo();  
  3. ?> 

我这里安装此版本为5.2.13,新的PHP已近更新至5.3.3,但是老版本的ZendOptimizer对其不支持,所以本着稳定就好的原则,继续使用5.2.13;





标签:
Warning: Invalid argument supplied for foreach() in C:\zl\webjia\view.php on line 50

友情链接
轻松育儿世界奇观
苏ICP备16066217号-2