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

Unix/Linux
Linux 备份 恢复方法
Linux玩CS反恐精英的方法
在一个ISO镜像中集成多个不同的linux发行版,可刻盘,可引导
Linux 快捷键使用
Linux DHCP 服务器配置方法介绍
Linux 22端口的修改方法
Linux 记录会话过程的命令
Linux 后台执行程序如何操作?
linux Wget命令来浏览网页的方法
Linux tail命令的巧妙应用
Wine 中文存在很多的乱码怎么解决方法
linux 新手教程之创建锁文件的方法
配置Linux 保证其系统的安全
Linux DHCP协议实现过程
Linux系统下破解SAM密码
linux/unix vi 编辑器用法详解
Linux 误删文件的解决方法
Linux系统下的历史记录删除方法
Red Hat Linux 安全设置指南
Linux基本命令-注销、关机、重启

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


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