装上Fedora 13有几天了。环境一直比较难搭配。自己弄了好几天,接合网上大家总结的经验。今天终于是搞熟了。特把过程和一些心得写一下。
首先说一下。一定要最后安装PHP,否则php对mysql的支持比较难配置。
安装之前有好多Fedora自代的包要删除,耐心删吧。不要问为什么会自带的有一部分。。我也不知道。闲言少
1,切换到gnome 的终端下,并以超级管理员的身份登录。(键入:su)
2,rpm -qa|grep -i httpd
回车后会出现如下:
httpd-2.2.3-11.ic816
具体我记不清了。
3,将查找到的软件删除: rpm -e httpd-2.2.3-11.ic816 //把那个显示的都有这个方法逐个删除了。
4,用同样的方法删除mysql。
rpm -qa|grep -i httpd
然后:
rpm -e mysql-2.1.3-11.ic816
如果删除时出现错误,就加入强行删除命令:rpm -e mysql-2.1.3-11.ic816 --nodeps
5,feodra 默认的gcc编译器版本不能编译c和c++。。。升一下级:yum install gcc
然后安装 c++的编译器:yum install gcc-c++
准备工作就绪:下面开始安装
安装Apache
1,去官网下载Apache(http://httpd.apache.org/download.cgi).在此我下载的是2.2.15版本的tar.gz的源码包。
2,用超级管理员:su
3,切换到下载文件的目录下。因此我键入:cd /home/sean/下载
4,解压下载的文件 :tar -zxvf httpd-2.2.15.tar.gz
5,进入解压的httpd目录:cd httpd-2.2.15
6,并配置安装
./configure --prefix=/usr/local/lamp/apache --enable-so --enable-rewrite --enable-expires --enable-cache --enable-mem-cache
解释一下configure指令。--prefix 是按照目录。enable后面模块选项。www.linuxidc.com这里选择一些常用的模块,so是支持动态链接机制上加载DSO模块。后面装PHP时就会创建一个so的php模块。rewrite就是常用到的重写。expires是控制HTTP的"Expires:"和"Cache-Control:"头内容,PHP用 header控制缓存时要用到。其他的就不都说了,具有可以参考Apache
7,make
make install
8, /usr/local/lamp/apache/bin/apachectl -k start
然后在浏览器打开 http://localhost
不出意外我们可以看到了个页面,上面写着:it works!
表示安装成功。我们进入下一项。安装mysql
1,去官网下载mysql。(http://www.mysql.com/downloads/mysql/)在此我下载的是Generic Linux (glibc 2.3) (x86, 32-bit), Compressed TAR Archive(mysql-5.1.48-linux-i686-icc-glibc23.tar.gz)这个是他的二进制源码。rpm包安装比较好安装。就不说了。
2,切换目录 :cd /home/sean/下载
3,解压:tar -zxvf mysql-5.1.48-linux-i686-glibc23.tar.gz
4,将解压文件夹移动到目标:mv mysql-5.1.48-linux-i686-glibc23 /usr/local/lamp/mysql //(此为安装目录)
5,切换到目标目录下,:cd /usr/local/lamp/mysql
6,添加mysql用户组:groupadd mysql
7,添加mysql用户:adduser -g mysql mysql
8,chown -R mysql .
chgrp -R mysql .
一定注意先后顺序这两句。9,# cd /support-files
# ls
可以看到my-huge.cnf ,my-innodb-heavy-4G.cnf ,my-large.cnf ,my-medium.cnf ,my-small.cnf这几个文件,选一个适合你的(针对你服务器用途),把它copy到/etc下。我选的是my-medium.cnf。
# cp my-medium.cnf /etc/my.cnf
10, 初始化数据库:
cd ../
scripts/mysql_install_db --user=root
11,
# ./bin/mysqld_safe --user=xxx &
执行这句之后,mysql就应该已经启动了。说明一切正常。
安装php
1,去php官网下载php。(http://www.php.net/downloads.php)这里我下载的是php-5.3.2.tar.gz
2, cd /usr/sean/下载
解压php
tar -zxvf php-5.3.2.tar.gz
进入php解压目录
cd php-5.3.2
3,配 置
./configure --prefix=/usr/local/lamp/php --with-config-file-path=/usr/local/lib --with-apxs2=/usr/local/lamp/apache/bin/apxs --with-mysql=/usr/local/lamp/mysql --with-zlib --enable-mbstring --enable-xml
这里也大略说一下configure。--prefix是安装目录。--with-config-file-path是指定php配置文档php.ini所在的目录。--with-apxs2后面跟我是apache的目录(如果apache不是安装在/usr/local/apache下)。--with-mysql,安装mysql扩展,同理=后面是mysql的安装目录(如果不是安装在/usr/local/mysql下)。 --with-zlib安装zlib扩展,前提是linux已经安装了zlib,未安装可以去掉这个选项。安装mbstring和xml扩展。这些都是常用的模块。
4, 执行
make
执行
make install
将php配置文档复制到/usr/local/lib
cp php.ini-development /usr/local/lib/php.ini
5,将libphp5.so复制到apache目录下。
cp /libs/libphp5.so /usr/local/lamp/apache/moudules/libphp5.so
至此,PHP安装完成。
配置mysql
1. cd /usr/local/lamp/mysql
2,# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
这一句的作用是将 mysql加入开机启动服务。进入linux后就自动开启mysql
3,# chmod 700 /etc/rc.d/init.d/mysqld
# chkconfig --add mysqld
这个命令的 作用是把mysql添加为系统服务,服务名为mysqld。
4,打开编辑一下mysqld: gedit /etc/rc.d/init.d/mysqld
找到basedir这一行:在=后面加上/usr/local/lamp/mysql (这是因为我们没有把mysql装在/usr/local/mysql下)
下面的一行datadir:在=后面加上/usr/local/lamp/mysql/data (原因不说了)