LAMP环境搭建(centos6.9+apache2.4+mysql5.7+php7.1)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LAMP环境搭建(centos6.9+apache2.4+mysql5.7+php7.1)相关的知识,希望对你有一定的参考价值。

安装前准备

CentOS 6.9 64位 最小化安装

yum install -y make gcc gcc-c++ perl zlib-devel libaio libpng libpng-devel libjpeg-devel pcre-devel
yum install -y  libXpm-devel openssl openssl-devel libxml2-devel bzip2-devel.x86_64 libjpeg-turbo-devel
yum install -y  freetype freetype-devel libtool cmake ncurses-devel bison re2c curl-devel wget
rpm -ivh "http://mirrors.sohu.com/fedora-epel/epel-release-latest-6.noarch.rpm"
yum install -y libmcrypt-devel re2c


一、安装MySql

1.编译安装

下载软件包

cd /usr/local/src/
wget http://mirrors.sohu.com/mysql/MySQL-5.7/http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-boost-5.7.17.tar.gz

解压
tar zxvf mysql-boost-5.7.17.tar.gz

编译&安装
cd mysql-5.7.17

cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/data/mysql \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_BOOST=./boost/boost_1_59_0/

make && make install


注意:如果编译出错,执行如下操作,然后重新配置。

make clean
rm CMakeCache.txt


2.二进制包安装
若编译过程较慢,可以下载编译好的二进制包直接安装
cd /usr/local/src/
wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
tar zxvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

移至/usr/local/mysql目录
mv mysql-5.7.17-linux-glibc2.5-x86_64 /usr/local/mysql


3.建立mysql用户
useradd -s /sbin/nologin mysql


初始化数据库,创建系统自带的数据库和表

mkdir -p /data/mysql
chown -R mysql:mysql /data/mysql
cd /usr/local/mysql
./bin/mysqld --initialize --basedir=/usr/local/mysql --datadir=/data/mysql --user=mysql

结束后会生成一个密码,记下来


初始化时会出现如下警告:
[Warning] TIMESTAMP with implicit DEFAULT value is deprecated.
Please use --explicit_defaults_for_timestamp server option (see
documentation for more details).

要想取消该警告,在启动mysql时,my.cnf中加入
[mysqld]
explicit_defaults_for_timestamp=true


添加服务,拷贝服务脚本到init.d目录,并设置开机启动
cp support-files/my-default.cnf /etc/my.cnf
cp support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
vi /etc/init.d/mysqld
修改datadir

datadir=/data/mysql


chkconfig mysqld on
service mysqld start

修改密码
/usr/local/mysql/bin/mysqladmin -uroot -p‘刚才记下的密码‘ password "新密码"


二、安装apache2.4

下载源码:

cd /usr/local/src
wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.4.25.tar.gz

wget http://mirrors.cnnic.cn/apache/apr/apr-1.5.2.tar.gz

wget http://mirrors.cnnic.cn/apache/apr/apr-util-1.5.4.tar.gz

tar zxvf /usr/local/src/httpd-2.4.25.tar.gz

tar zxvf /usr/local/src/apr-1.5.2.tar.gz

tar zxvf /usr/local/src/apr-util-1.5.4.tar.gz

mv /usr/local/src/apr-1.5.2 /usr/local/src/httpd-2.4.25/srclib/apr

mv /usr/local/src/apr-util-1.5.4 /usr/local/src/httpd-2.4.25/srclib/apr-util

cd /usr/local/src/httpd-2.4.25

./configure \--prefix=/usr/local/apache2 \--with-included-apr \--enable-so \--enable-deflate=shared \--enable-expires=shared \--enable-rewrite=shared

make && make install

cd /usr/local/apache2/
vi conf/httpd.conf


找到
#ServerName www.example.com:80
改成
ServerName localhost:80


检查配置文件语法
bin/apachectl -t

配置启动脚本
cp /usr/local/src/httpd-2.4.25/build/rpm/httpd.init /etc/init.d/httpd

注意文件中有三处主要的地方需要修改下的:

httpd=${HTTPD-/usr/local/apache2/bin/httpd}
pidfile=${PIDFILE-/usr/local/apache2/logs/${prog}.pid}
CONFFILE=/usr/local/apache2/conf/httpd.conf

请根据自己的实际情况更改相应的路径!


然后运行如下命令:

chmod +x /etc/init.d/httpd
chkconfig --add httpd
chkconfig httpd on
/etc/init.d/httpd start
netstat -lnp |grep httpd


三、php安装

cd /usr/local/src
wget http://mirrors.sohu.com/php/php-7.1.3.tar.gz
tar zxvf php-7.1.3.tar.gz
cd php-7.1.13

./configure \
--prefix=/usr/local/php \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-config-file-path=/usr/local/php/etc  \
--with-mysql-sock=/tmp/mysql.sock \
--with-mysqli=shared,mysqlnd \
--with-pdo-mysql=shared,mysqlnd \
--with-libxml-dir \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-iconv-dir \
--with-zlib-dir \
--with-bz2 \
--with-openssl \
--with-mcrypt \
--enable-soap \
--enable-gd-native-ttf \
--enable-mbstring \
--enable-sockets \
--enable-exif \
--disable-ipv6

make && make install

cp php.ini-production /usr/local/php/etc/php.ini


四、apache结合php


vi /usr/local/apache2/conf/httpd.conf

找到

#ServerName www.example.com:80

改成
ServerName localhost:80


找到:

AddType application/x-gzip .gz .tgz

在该行下面添加:

AddType application/x-httpd-php .php


找到:

<IfModule dir_module>
    DirectoryIndex index.html
</IfModule>

将该行改为:

<IfModule dir_module>
    DirectoryIndex index.html index.htm index.php
</IfModule>


/usr/local/apache2/bin/apachectl -t
service httpd restart

测试解析php

vi /usr/local/apache2/htdocs/1.php

写入:

<?php
    echo "php解析正常";
    echo phpinfo();
?>
保存后,继续测试:

curl localhost/1.php



以上是关于LAMP环境搭建(centos6.9+apache2.4+mysql5.7+php7.1)的主要内容,如果未能解决你的问题,请参考以下文章

在centos6.9上编译安装LAMP并搭建个人博客

LNMP环境搭建(centos6.9+mysql5.7+php7.1+nginx1.9)

mysql5.7+apache2.4+php7.1搭建Discuz论坛

mysql5.7主主配置

apache + php +mysql 环境搭建lamp

利用docker-compose搭建LAMP+phpmyadmin环境