apache mysql php for linux 安装
apache
# tar -jxvf httpd-2.2.9.tar.bz2
# cd httpd-2.2.9
# ./configure --prefix=/usr/local/apache2 --enable-mods-shared=all --enable-so
# make
# make install
//./configure --prefix=/usr/local/apache2 --enable-mods-shared=all --enable-so 将apache安装到/usr/local/apache2目录下,同时动态编译所有模块,并装载DSO。为什么要这样呢,因为我是个懒人,如果以后有要用到某一模块,我就不用再次去编译程序了,只要修改下httpd.conf就行了。当然,那些暂时未用到的模块我也会注释掉,为了安全,也是为了资源和效率~
-------------------------------------------------------------------------------------
mysql
mysql的安装,我是按照官网的文档一步步的命令操作的,在这我就简单地解释下
# groupadd mysql
# useradd -g mysql mysql
//创建mysql组,创建一个mysql用户。目的就是为mysql创建隔离用户,出于安全考虑。其实就用useradd就可以了,因为在linux下创建一个用户,如果没指明,会自动创建同名组,并隶属该组。
# gunzip < mysql-VERSION.tar.gz | tar -xvf -
# cd mysql-VERSION
//解压,并转到文件目录。tar就行了~
# ./configure --prefix=/usr/local/mysql
# make
# make install
//编译安装,安装的位置是/usr/local/mysql
# cp support-files/my-medium.cnf /etc/my.cnf
//配置文件。用support-files/my-medium.cnf作为模板,放到/etc中。以后需要配置mysql的,直接修改my.cnf文件就行了
# cd /usr/local/mysql
# chown -R mysql .
# chgrp -R mysql .
//进入mysql文件目录,改变文件的所有权。留意后面的 "." ,否则提示出错~
# bin/mysql_install_db --user=mysql
//创建mysql授权表。只需运行一次。用"--user="指定一用户,否则就是使用当用登录用户
而我这里却遇到了问题,运行后提示出错
[ERROR] /usr/local/mysql/libexec/mysqld: unknown option '--skip-federated'
[ERROR] Aborting
[Note] /usr/local/mysql/libexec/mysqld: Shutdown complete
原因是/etc/my.cnf中有一个skip-federated参数,用#注释就行了
# chown -R root .
# chown -R mysql var
//文件的所有权重新改为root, var目录的所有权依然是mysql.
到这,有些人会有点晕,前面改了,现在又改回去。其实是有原因的,前面的修改,主要是为了顺利创建授权表
# bin/mysqld_safe --user=mysql &
//初始化。一般不会出什么什么。
之后就可以用mysqladmin修改root的密码。无论什么情况,都要有这个习惯~
-------------------------------------------------------------------------------------
php
# ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --with-pear --with-zlib
# make & make install
//支持apache,支持mysql,安装pear,方便以后管理; 安装zlib,网页压缩,加速传输。
# cp php.ini-dist /usr/local/lib/php.ini
//php的配置文件
之后就是修改httpd.conf文件。加入模块支持,还有就是加入文档格式支持。
到此,基础建筑终于建好了,下面的事就是上层建筑的架设了,看你想弄什么,在这就不写了~
后话,在LNIUX下安装,一定要注意顺序。如果要支持PHP,则PHP一定是最后安装的(为啥?注意到“--with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql”了没?)
©著作权归作者所有:来自51CTO博客作者山里的兔子的原创作品,如需转载,请注明出处,否则将追究法律责任