当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > Freebsd6.0下通过ports安装apache2.2.0+mysql5.1.7+php5.1.2

Unix/Linux
mysql+httpd+gd+php+zend
automake 小回顾
unix黑客精神的最好诠释
www
sun t3存储的设置
RPM简明中文手册
Linux爱好者入门教程 序章 (持续更新)
第一章 Linux基础知识 (飘心)
linux下进程与线程
浅谈如何学习linux
第二章 Linux安装
硬件安装指南
Windows 2000 的桌面不見了的解決方法
部分的ADSL路由器默认帐号密码
如何设定安全log服务器呢?
iptables 规则速查
网友学习 Linux 的七点忠告
sniffer的含义及原理
Linux编程白皮书 第二章 内存管理
Linux编程白皮书 第二章 内存管理 2.1.1 请求调页 --2.1.5 访问控制

Unix/Linux 中的 Freebsd6.0下通过ports安装apache2.2.0+mysql5.1.7+php5.1.2


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-15   浏览: 91 ::
收藏到网摘: n/a

一、安装mysql51  #因为很多文章有提到mysql在php之后安装配置会麻烦一些,所以首先安装(不过与apache谁先谁后无所谓,不管那么多了,我是这么做的)

安装前最好先添加mysql组和mysql用户

QUOTE: pw addgroup mysql
pw adduser mysql

开始安装

 

QUOTE: cd /usr/ports/databases/mysql51-server/
make install clean # n长的编译过程
rehash
cp /usr/local/share/mysql/my-large.cnf /etc/my.cnf #服务器内存1G,但是与apache在一起

/usr/local/share/mysql下面有5个my-xxxx.cnf文件
my-small.cnf                       最小配置安装,内存<=64M,数据数量最少
my-large.cnf                       内存=512M
my-medium.cnf                   32M<内存<64M,或者内存有128M,但是数据库与web服务器公用内存
my-huge.cnf                       1G<内存<2G,服务器主要运行mysql
my-innodb-heavy-4G.cnf    最大配置安装,内存至少4G

 

QUOTE: mysql_install_db -u mysql ; mysqld_safe -u mysql & #建立数据库目录

二、安装apache22+php5

 

QUOTE: cd /usr/ports/www/apache22/
make install clean
cd ../mod_php5
make install clean

配置/usr/local/etc/apache/httpd.conf:
加入

 

QUOTE: AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps #可不加

*注意:第二行主要为查看php代码用,加上的话web目录下的所有扩展名为.phps的文件在被浏览器访问时都显示其源代码,我安装的时候就加了,但少了.phps的s,之后郁闷了半天
 

QUOTE: DocumentRoot "/usr/local/www/apache22/data"
<Directory "/usr/local/www/apache22/data">

这两个是你的主页目录,可以根据自己需要跟改,要一致。

 

QUOTE:     Options Indexes FollowSymLinks

去掉Indexes可以限制浏览你的主页目录

 

QUOTE: rehash  
apachectl start
echo "<?php phpinfo() ?>" > /usr/loacl/www/data/info.php

可能你的apache启动的时候和我一样会报这样的错误:

 

QUOTE: [Wed Apr 12 21:48:09 2006] [warn] (2)No such file or directory: Failed to enable the 'httpready' Accept Filter

我在google上找到了解决办法,执行如下操作

 

QUOTE: kldload accf_http

grep accf /boot/defaults/loader.conf
accf_data_load="NO" # Wait for data accept filter
accf_http_load="NO" # Wait for full HTTP request accept filter #将这个"NO"改成"YES"

但是为什么这样做还不知道,而且这个accf是做什么用的也不知道,还请大侠们来解释一下。

访问http://服务器的IP/info.php,如果有php的说明文件说明基本的php+apache2已经工作正常!

php5扩展功能安装

 

QUOTE: cd /usr/port/lang/php5-extensions/
make install clean #如果第一次安装会出现提示框,否则先make conf设置
选择需要的模块,当然也可以选择必须的,日后再添加。

apachectl restart

如果http://服务器ip/info.php有改动,恭喜你!安装成功!!

后续工作:

 

QUOTE: echo ' mysql_enable = "YES" ' >> /etc/rc.conf
echo ' apache22_enable="YES" ' >> /etc/rc.conf

以便开机后自动启动mysql apache