yum安装很愉快:
yum install httpd mysql mysql-server php php-mysql
但是yum安装的版本可能会很低达不到要求,接下来就是编译安装。
在进行编译安装之前先yum安装httpd,将/etc/init.d/httpd该文件备份为httpd.bak备用,在利用yum卸载httpd
[root@localhost src]# yum install httpd
[root@localhost src]# cp /etc/init.d/httpd /etc/init.d/httpd.bak
[root@localhost src]# yum remove httpd
apache源码下载地址:http://archive.apache.org/dist/httpd
依赖包apr,apr-util下载地址:http://archive.apache.org/dist/apr
依赖包pcre下载地址:https://ftp.pcre.org/pub/pcre/
安装apr包:
[root@localhost src]# wget http://archive.apache.org/dist/apr/apr-1.5.2.tar.bz2
[root@localhost src]# tar -jx -f apr-1.5.2.tar.bz2 apr-1.5.2
[root@localhost src]# cd apr-1.5.2
[root@localhost apr-1.5.2]# ./configure --prefix=/usr/local/apr
[root@localhost apr-1.5.2]# make clean && make && make install
安装apr-util包:
[root@localhost src]# wget http://archive.apache.org/dist/apr/apr-util-1.5.2.tar.bz2
[root@localhost src]# tar -jx -f apr-util-1.5.2.tar.bz2 apr-util-1.5.2
[root@localhost src]# cd apr-util-1.5.2
[root@localhost apr-util-1.5.2]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
[root@localhost apr-util-1.5.2]# make clean && make && make install
安装pcre包:
[root@localhost src]# wget --no-check-certificate https://ftp.pcre.org/pub/pcre/pcre-8.42.tar.bz2
[root@localhost src]# tar -jx -f pcre-8.42.tar.bz2 pcre-8.42
[root@localhost src]# cd pcre-8.42
[root@localhost pcre-8.42]# ./configure --prefix=/usr/local/pcre
[root@localhost pcre-8.42]# make clean && make && make install
在安装pcre之前如果没有安装gcc,gcc-c++先用yum自行安装,否则不能进行编译安装!
yum 安装openssl-devel,否则可能会因为openssl版本太旧不能安装httpd
yum install openssl-devel
安装httpdroot@localhost src]# wget http://archive.apache.org/dist/httpd/httpd-2.4.29.tar.bz2
[root@localhost src]# tar -jx -f httpd-2.4.29.tar.bz2 httpd-2.4.29
[root@localhost src]# cd httpd-2.4.29
[root@localhost httpd-2.4.29]# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd \
--with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre \
--enable-mods-shared=most --enable-cgi --enable-rewrite --enable-so --enable-ssl --with-mpm=event
[root@localhost httpd-2.4.29]# make clean && make && make install
修改/etc/httpd/httpd.conf文件,在模块mime_module里增加
AddType application/x-httpd-php .php
在模块dir_module里DirectoryIndex后面添加 index.php测试是否安装成功:
[root@localhost bin]# ./apachectl start
[root@localhost bin]# curl http://localhost //修改/etc/httpd/httpd.conf里面的ServerName 为localhost
将httpd加到服务列表中:
[root@localhost bin]# mv /etc/init.d/httpd.bak /etc/init.d/httpd
[root@localhost bin]# vim /etc/init.d/httpd //修改 apachectl、httpd的值
apachectl=/usr/local/apache/bin/apachectl
httpd=${HTTPD-/usr/local/apache/bin/httpd}
pidfile=${PIDFILE-/usr/local/apache/logs/httpd.pid}
[root@localhost bin]# chmod 755 /etc/init.d/httpd
[root@localhost bin]# service httpd start
[root@localhost bin]# chkconfig httpd on
[root@localhost bin]# chkconfig --list httpd
将/usr/local/apache/bin添加到PATH中
[root@localhost bin]# vim /root/.bash_profile //在PATH下面一行添加
PATH=$PATH:/usr/local/apache/bin
[root@localhost bin]# source /root/.bash_profile
接下来安装Mysql
在MySQL5.5开始就需要用cmake来进行编译安装,所以要先安装cmake,可以直接yum安装
yum install cmake
5.7.5以上版本还需要boost,但是可以不用安装,解压即可
[root@localhost src]# wget --no-check-certificate \
https://jaist.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
[root@localhost src]# tar -xz -f boost_1_59_0.tar.gz boost_1_59_0
在安装Mysql之前需要创建mysql的用户组、用户、数据存放目录
[root@localhost /]# groupadd mysql
[root@localhost /]# useradd -r -g mysql -s /bin/false mysql
[root@localhost /]# mkdir -p /data/mysql_data
[root@localhost /]# cd /data
[root@localhost data]# chown mysql.mysql mysql_data
安装Mysql
[root@localhost src]# wget --no-check-certificate \
https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.22.tar.gz
[root@localhost src]# tar -zx -f mysql-5.7.22.tar.gz mysql-5.7.22
[root@localhost src]# cd mysql-5.7.22
[root@localhost mysql-5.7.22]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/mydata/mysql_data/ \
-DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/src/boost_1_59_0 -DSYSCONFDIR=/etc \
-DENABLED_LOCAL_INFILE=1 -DENABLE_DOWNLOADS=1 -DWITH_EXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
[root@localhost mysql-5.7.22]# make clean && make && make install
Mysql配置参数:https://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html
如果没有安装ncurses-devel会报错:Curses library not found. Please install appropriate package.
可以直接yum安装
yum install ncurses-devel
将mysqld加到服务列表中
[root@localhost mysql-5.7.22]# cd /usr/local/mysql/support-files
[root@localhost support-files]# cp mysql.server /etc/init.d/mysqld
[root@localhost support-files]# chmod 755 /etc/init.d/mysqld
[root@localhost support-files]# chkconfig mysqld on
[root@localhost support-files]# chkconfig --list mysqld
将/usr/local/mysql/bin添加到PATH中
[root@localhost support-files]# vim /root/.bash_profile //在PATH下面一行添加
PATH=$PATH:/usr/local/mysql/bin
[root@localhost support-files]# source /root/.bash_profile
修改mysql配置文件[root@localhost support-files]# vim /etc/my.cnf //修改
[client]
port=3306
socket=/tmp/mysql.sock
default-character-set=utf8
[mysqld]
port=3306
socket=/tmp/mysql.sock
user=mysql
character-set-server=utf8
default_storage_engine=InnoDB
pid-file=/data/mysql_data/mysql.pid
log_error=/data/mysql_data/mysql-error.log
[mysqldump]
quick
max_allowed_packet=16M
初始化Mysql数据库[root@localhost support-files]# cd /usr/local/mysql/bin
[root@localhost bin]# ./mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql \
--datadir=/data/mysql_data
启动Mysql数据库[root@localhost bin]# /etc/init.d/mysqld start
最后是PHP安装[root@localhost src]# wget http://hk1.php.net/get/php-5.6.36.tar.bz2/from/this/mirror
[root@localhost src]# tar -jx -f php-5.6.36.tar.bz2 php-5.6.36
[root@localhost src]# cd php-5.6.36
[root@localhost php-5.6.36]# ./configure --prefix=/usr/local/php --with-config-file-path=/etc/ \
--with-config-file-scan-dir=/etc/php.d --with-mysql=mysqlnd \
--with-mysqli=mysqlnd --with-apxs2=/usr/local/apache/bin/apxs --enable-sockets \
--with-openssl --enable-mbstring --enable-xml --with-libxml-dir=/usr/ --with-freetype-dir \
--with-jpeg-dir --with-png-dir
[root@localhost php-5.6.36]# make clean && make && make install
如果没有安装libxml2、libxml2-devel会报错:
libxml2 configure: error: xml2-config not found. Please check your libxml2 installation.
直接yum安装即可:
yum install libxml2 libxml2-devel
将配置文件拷贝致/etc
[root@localhost php-5.6.36]# cp php.ini-production /etc/php.ini
至此LAMP编译安装结束,就可以到/usr/local/apache/htdocs去编辑你的php文件了!