starxzj 发表于 2018-11-27 11:35:16

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

  安装前准备
  (本文永久地址:http://woymk.blog.51cto.com/10000269/1914539)
  CentOS 6.9 64位 最小化安装
  yum install -y make gcc gcc-c++ perl zlib-devel libaio libpng libpng-devel libjpeg-devel pcre-devel
yum install -ylibXpm-devel openssl openssl-devel libxml2-devel bzip2-devel.x86_64 libjpeg-turbo-devel
yum install -yfreetype 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
  (5.7初始化方式已经变更,直接使用mysqld命令初始化,5.6之前版本初始化执行下面这句:
  scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql --user=mysql)
  结束后会生成一个密码,记下来
  
初始化时会出现如下警告:
TIMESTAMP with implicit DEFAULT value is deprecated.
Please use --explicit_defaults_for_timestamp server option (see
documentation for more details).
  要想取消该警告,在启动mysql时,my.cnf中加入

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
basedir=/usr/local/mysql
datadir=/data/mysql
  chkconfig --add mysqld
chkconfig mysqld on
service mysqld start
  修改密码

  /usr/local/mysql/bin/mysqladmin -uroot -p'刚才记下的密码' password "新密码"
  5.6之前版本修改密码执行下面这句:

  /usr/local/mysql/bin/mysqladmin -uroot 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.3
  ./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 \
--enable-mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=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
  
找到:
  
    DirectoryIndex index.html

  将该行改为:
  
    DirectoryIndex index.html index.htm index.php

  
/usr/local/apache2/bin/apachectl -t
service httpd restart
  测试解析php
  vi /usr/local/apache2/htdocs/1.php
  写入:
  
保存后,继续测试:
  curl localhost/1.php
  查看结果已经可以成功解析。
  




页: [1]
查看完整版本: LAMP环境搭建(centos6.9+apache2.4+mysql5.7+php7.1)