FreeBSD下安装mysql+apache+php

一、安装MYSQL

#pw groupadd mysql 先建立mysql组

#pw useradd -g mysql mysql -s /nonexitent 建立用户mysql

#cd /usr/ports/databases/mysql40-server

#make install clean

有很多朋友没有起动起来mysql,有很多是因为没有设置权限造成的,比如我前些天老是出现

Error 2002:Can't connect local mysql sever through sokect'/tmp/mysql.sock'(2)

#chown -R mysql:mysql /var/db/mysql

#chown -R mysql:mysql /usr/local/share/mysql

初始化数据库

#cd /usr/local/bin

#mysql_install_db --user=mysql

如果提示出现某些文件无法找到或读取时,找到那些目录,并给它加上权限,同加权限一步:

启动mysql

#mysqld_safe --user=mysql& 再后一个符号一定要加,意思是让mysql在后台运行,我开始就是没加,执行命令之后一直没反应,按CTRL+Z后出来了,但是mysql进程却是stop。

测试

#cd /

#mysql

进入mysql> 提示符则说明OK

二、安装apache

方法1:使用ports安装

#cd /usr/ports/www/apache22 我装的是apache2.2

#make install clean

慢慢等,装好之后启动一下看看

#cd /usr/local/sbin

#apachectl start

用脚本启动也可以

#cd /usr/local/etc/rc.d/

#./apache22.sh start

 

方法2:自己下载安装包安装

 

在httpd.apache.org上下载httpd-x.x.xx.tar.gz (x处为版本号,我下的是httpd-2.2.13.tar.gz,所以下面命令中使用的也是这个版本的)

放在 /usr/local/src目录下.
首先进入目录后解压缩:
# cd /usr/local/src
# tar -zxvf httpd-2.2.13.tar.gz
然后就会得到 httpd-2.2.13目录,我们进入目录
# cd httpd-2.2.13
安装前的配置:
# ./configure --prefix=/usr/local/apache  --enable-shared=max  --enable-module=rewrite  --enable-module=so
执行上面的命令,如果没有错误信息,证明配置成功,然后进行编译:
# make
一两分钟就编译完了,然后进行安装:
# make install
安装完成后,Apache就存放在 /usr/local/apache目录下了, bin是执行文件的目录,conf是配置文件目录,htdocs是网页的主目录,logs是日志目录.
Apache通过 bin/apachectl或者bin/httpd来控制启动或者停止.
# /usr/local/apache/bin/httpd -k start #启动apache
# /usr/local/apache/bin/httpd -k stop #停止apache .
# /usr/local/apache/bin/httpd -k restart #重启apache
然后你可以通过
http://localhost
来测试apache是否安装成功,如果出现apache的页面则安装成功,否则请检查上面的步骤.

 

设置开机自动启动:

# ee /etc/rc.conf

在里面添加入下面代码:

apache_enable="YES"

apache2_enable="YES"

apache22_enable="YES"

其中每一行都是针对不同版本的启动项,如最后一行是针对2.2版本的,如果你知道自己Apache版本,只要用其中一行就可以了,不知道的话把三行都写上也没关系。如果都三行都写上了还是没有自启动,那么添加这么一行:

/usr/local/apache/bin/apachectl start

注:因为安装路径的不同所以命令可能会不同,你只要将上方的路径换成你的apachectl文件所在的路径就可以了。

 

可能错误一:

httpd: Could not reliably determine the server's fully qualified domain name

只要把/conf/httpd.conf文件的#ServerName 前的#去掉就好了

可能错误二:

[warn] (2)No such file or directory: Failed to enable the ‘httpready’ Accept Filter

Apache无法开启FreeBSD下accept filter 的机制。

修改/boot/loader.conf和/etc/loader.conf文件(没有就自已建)

添加 accf_http_load="yes"

三、安装PHP

#cd /usr/ports/www/php4-session

#make install clean

配置PHP

#cd /usr/local/etc

#mv php.ini-recommended /usr/local/lib/php.ini

移动PHP配置文件并改名为PHP.ini

#ee /usr/local/lib/php.ini

编辑php.ini文件

按CTRL+y查找 register_globals 将register_globals=Off 改成On

四、配置apache使它支持PHP

#cd /usr/local/etc/apache22/httpd.conf

加入PHP模块: LoadModule php4_module libphp4.so(libphp4.so文件目录) 我的装好apache后好像就有了,所我我这里没改
CTRL+Y查找AddType application
添加 AddType application/x-httpd-php .php .php3
修改DirectoryIndex
在DirectoryIndex index.html后加上index.php index.php3
保存退出~

测试一下PHP
在/usr/local/www/apache22/data下新建一个info.php文件
内容为:
<?php phpinfo(); ?>
保存后改名为index.php同时删掉index.html
用别的电脑打开IE看到是PHP测试和版本号就大功告成了!

你可能感兴趣的:(apache,PHP,mysql,测试,application,FreeBSD)