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

Unix/Linux
Linux crontab定时执行任务 命令格式与详细例子
linux 查看用户及用户组的方法
让Linux系统有效防御ARP攻击的实用技巧
Linux 常用软件列表
linux wget 一个强大的下载命令
linux 常用脚本、命令
linux 磁盘配额 简单介绍
Linux服务器架设笔记 Squid服务器配置
ubuntu intel 集成显卡安装
ubuntu 9.04 X3100 显卡开启3D特效
Ubuntu 8.10 Server Ruby 的安装方法
Ubuntu root帐户密码修改
ubuntu下apt-get 命令参数
Ubuntu Linux下实现QQ的三种方式
Ubuntu 8.04中建立PHP+MySQL环境
Ubuntu常用软件大全
Ubuntu系统下安装Aircrack-ng
Ubuntu实现FTP功能
ubuntu 字体美化实现方法
ubuntu下netbeans汉字显示残缺问题

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-15   浏览: 118 ::
收藏到网摘: 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