linu下配置mysql+apache+php详解

   现在有很多文章介绍在linux下配置myssql+apache+php的环境,但这些大多版本比较老,或者解释的不是很详细,像我这个样的初次接触这套系统的人,很多地方都搞不明白。经过反复几次实验与安装,最后终于完成了这套系统的安装。linux彻底重装一次,mysql安装过rpm,tar包其中rpm按完发现不适用,删除,tar安装过了无数次,最后终于成功了,apache安装了几次,主要是配置文件写的有问题。php安装了无数次,因为前几次的mysql,apache,安装的问题。
几次安装失败的地方:
1.编译参数设置错误,因为以为有些参数无关紧要所以编译时没有写,按完发现这些参数是必须的。
2.安装的包不好,主要是mysql的rpm包,按完找不到mysql.h文件,导致php配置检查时不过
3.权限设置不对,导致mysql启动不了,或者按完可以启动,但reboot机器之后无法启动。
     下面详细说明下,成功的安装步骤,
1 ,安装MYSQL
 MYSQL最好是安装tar包 一是安装位置容易控制,二是安装之后很好找到mysql.h文件,这个是php安装必须的
mysql的安装虽然是tar包,但这个不需要再编译,直接解包就可以了,安装过程相对比较简单,麻烦的是权限和用户的配置,按照mysql的官方安装手册安装,可以很轻松的安装完成
如下步骤
1:下载mysql-5.0.45-linux-i686-glibc23.tar.gz
2:解包
3:建立用户和组 mysql用户,mysql组
4:更改权限 给mysql用户和mysql组,安装目录的所有者权限,给root用户安装目录的所有者权限,给mysql的用户数据库文件目录的所有者权限
5:建立数据库文件
6:启动
7:配置mysql数据库;更改root密码,允许远程访问
在安装完成后,有时出现很多无法启动现象,或者重启之后无法启动,这个主要原因就是目录的权限配置不对,mysql.socket文件无法建立,仔细对照下面的权限配置修改就可以正常启动

例子
mysql-5.0.45-linux-i686-glibc23.tar.gz在root目录下,安装目录为/root/mysql,当前目录为/root,更改root密码为12345
groupadd mysql
useradd -g mysql mysql
tar -zxvf mysql-5.0.45-linux-i686-glibc23.tar.gz
mv mysql-5.0.45-linux-i686-glibc23 /root/mysql
cd mysql
chown -R mysql .
chgrp -R mysql .
scipts/mysql_install_db --user=mysql
chown -R root .
chown -R mysql data
bin/mysqld_safe --user=mysql &

如出现 Starting mysqld daemon with databases from /root/mysql/data
安装启动完成
一下是mysql配置
bin/mysqladmin -u root password 12345
bin/mysql -u root -p12345
mysql>use mysql
mysql>update user set host='' where host='localhost' and user='root';
mysql>flush privileges;
mysql>quit
 
2,安装APACHE
安装apache
如下步骤:
1:下载.tar包:httpd-2.2.4.tar.gz
2:解开压缩包 tar -zxvf httpd-2.2.4.tar.gz,生成httpd-2.2.4文件夹
3:改变目录  cd httpd-2.2.4
4:编译安装文件 1:配置编译文件 ./configure --prefix=需要安装的路径(注1) --enable-module=so(注2)
                            2:make
                            3;make install
apahce安装完成
测试 到安装目录下bin/apachectl start 启动apache,打开浏览器127.0.0.1 出现it works页面,为安装成功。
注1:路径为绝对路径,及从linux根目录开始,假如你的安装目录为 /root/下的http,那么此处就为/root/http
注2:以DSO动态编译,这个参数的好处是以后安装php时,不再需要重新编译apache,否则,需要先编译一次apache,然后再编译安装php,然后再编译一次apache才能安装
例子:
httpd-2.2.4.tar.gz 在/root/下,需要安装到/root/http目录下,当前目录为/root/
tar -zxvf httpd-2.2.4.tar.gz
cd httpd-2.2.4
./configure --prefix=/root/http/ --enable-module=so
make
make install
/root/http/bin/apachectl start
安装,启动完成
打开浏览器127.0.0.1 出现it works页面,为安装成功

3,安装PHP
如下步骤
1下载php包 php-5.2.5.tar.gz、
2:解包 tar -zxvf php-5.2.5.tar.gz
3:改变目录 cd php-5.2.5
4:编译安装
1:配置编译文件 ./configure --prefix=安装目录 --with-apxs2=apache的安装目录/bin/apxs --with-config-file-path=php的安装目录/lib  --with-mysql=mysql的安装目录(注1) --with-xml(注2)
2:make
3;make install
5:添加php的配置文件 cp php.ini-dist /php安装目录/lib/php.in
6:更改配置文件1:更改apache的配置文件
                a 增加默认页面 DirectoryIndex index.html index.php
                b 增加解释文件类型  AddType application/x-httpd-php .php .phtml .php3 .inc
                                    AddType application/x-httpd-php-source .phps
                2;更改php配置文件 vi /php安装目录/lib/php.ini register-golbals = On
7:重启apache测试php环境
注1:最好安装mysql的tar包,rpm包不好找mysql.h文件,这个目录中找不到mysql.h文件,那么配置不过。
注2:在此过程中,很有可能需要libxml2安装。否则配置不过,libxml2包,安装比较简单,也是tar ./configure make,make install就可以了。
例子:
php-5.2.5.tar.gz,libxml2-2.6.19.tar..gz 在/root/下,需要安装目录为/root/php,mysql安装目录为/root/mysql,apache目录为/root/http,当前目录为/root/
tar -zxvf libxml2-2.6.19.tar..gz
cd libxml2-2.6.19
./configure
make
make install

cd ..
tar -zxvf php-5.2.5.tar.gz
cd php-5.2.5
./configure --prefix=/root/php  --with-apxs2=/root/http/bin/apxs --with-config-file-path=/root/php/lib --with-mysql=/root/mysql --with-xml
make
make install
cp php.ini-dist /root/php/lib/php.ini

vi /root/http/conf/httpd.conf
<IfModule dir_module>
DocumentRoot DirectoryIndex index.php index.html
</IfModule>

<IfModule mime_module>
AddType application/x-httpd-php .php .phtml .php3 .inc
AddType application/x-httpd-php-source .phps
</IfModule>
存盘退出

vi /root/php/lib/php.ini
register-golbals = On
存盘退出

vi /root/http/htdocs/index.php
<?php echo phpinfo();?>
存盘退出

/root/http/bin/apachectl restart
打开浏览器 /127.0.0.1/index.php

出现php配置信息,安装成功

5,修改启动文件
具体原理不说了,主要说下方法
mysql的方法是将启动脚本放到启动目录下
apache的方法是在启动文件中写入,启动命令。当然还有比较麻烦的方法,写一个apache的启动脚本,将启动脚本放到启动目录下
还有更简单方法,安装好后,输入ntsysv,选上httpd,mysql就可以了
例子
所有安装配置都是上面的安装配置
cd /etc/rc.d/init.d
cp /root/mysql/support-files/mysql.server mysql
chmod +x mysql
/sbin/chkconfig --add mysql

vi /etc/rc/rc.local
添加 /root/http/bin/apachectl start
存盘退出

重启机器之后,看是否启动正常

以上就是成功的安装过程。
我本不是做php开发的,这个只是帮别人配置,其中有很多不足之处。欢迎提出修改意见。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值