centos7.2系统lamp环境安装搭建

阅读更多

原文大多内容转载自:http://blog.csdn.net/dglxsong/article/details/52075918,版本修改为楼主自己版本,并且进行相应版本细节修改

 

centos-7.2 + apache-2.4.25 + mysql-5.7.17 + php-5.6.30 + phpMyAdmin-4.6.5.2

 

这是我在一台新装的centos7.2阿里云ECS服务器上搭建的lamp环境流程,目的是搭建一个当前最新版的lamp测试环境,以下流程仅供参考。

 

准备

1、创建我存放源码包的文件夹

 

mkdir -p /projects/lamp

 2、查看gcc是否安装

gcc -v 

 提示:如未安装,则进行yum安装

 

 

yum install -y gcc gcc-c++

 3、安装vim编辑器

 

 

yum install -y vim

 

 

安装apache

(一)安装apr

1、切换到源码目录

cd /projects/lamp

 2、下载apr包

 

 

wget http://apache.fayea.com/apr/apr-1.5.2.tar.gz

 3、安装apr包需要的扩展

 

 

yum install -y autoconf libtool

 4、解压、配置、编译、安装

 

 

tar -xzvf apr-1.5.2.tar.gz
cd apr-1.5.2
./buildconf
./configure --prefix=/usr/local/apr
make&& make install

问题1:如果./configure遇到‘executing libtool commands rm: cannot remove 'libtoolT': No such file ordirectory’

 

解决:

打开configure文件

 

vim configure 

 找到$RM "$cfgfile"所在行,然后添加#号注释掉此行保存并退出

 

 

(二)安装apr-util

1、切换到源码目录

 

cd /projects/lamp/

 2、下载apr-until包

wget http://apache.fayea.com/apr/apr-util-1.5.4.tar.gz

 3、解压、配置、编译、安装

 

 

tar -xzvf apr-util-1.5.4.tar.gz
cd apr-util-1.5.4
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make&& make install

 

 

(三)安装pcre包

1、切换到源码目录

 

cd /projects/lamp/

 2、下载pcre包

 

 

wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.39/pcre-8.39.zip

 3、安装解压工具unzip

 

 

yum install -y unzip

 4、解压、配置、编译、安装

 

 

unzip pcre-8.39.zip
cd pcre-8.39
./configure --prefix=/usr/local/pcre
make&& make install

 

 

(四)安装apache

1、切换到源码目录

 

cd /projects/lamp/

 2、下载apache

 

 

wget http://mirrors.cnnic.cn/apache//httpd/httpd-2.4.25.tar.bz2

 3.1、安装解压工具tar.bz2

 

 

yum install -y bzip2

 3.2、解压、配置、编译、安装

 

 

tar -xvjf httpd-2.4.25.tar.bz2
cd httpd-2.4.25
./configure \
--prefix=/usr/local/apache \
--with-apr=/usr/local/apr \
--with-apr-util=/usr/local/apr-util/bin/apu-1-config \
--with-pcre=/usr/local/pcre \
--enable-so \
--enable-rewrite
make&& make install

 4、配置apache

 

切换到配置文件目录

 

cd /usr/local/apache/conf

 vim打开配置文件

 

 

vim httpd.conf

 去掉ServerName前的注释,修改为localhost:80

 

5、启动apache服务

 

/usr/local/apache/bin/apachectl start

 6、查看apache是否安装成功

 

 

curl localhost

提示:如返回It works页面,则安装成功

 

安装mysql

提示:因为centos7.2默认安装了mariadb-libs,所以先要卸载掉

查看是否安装mariadb

 

rpm -qa | grep mariadb

 卸载mariadb(注意检查依赖,判断是否可以强制删除)

rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64

 1、切换到源码目录

cd /projects/lamp

 2、下载所需的rpm包

 

 

wget http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-community-common-5.7.17-1.el7.x86_64.rpm
wget http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-community-libs-5.7.17-1.el7.x86_64.rpm
wget http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-community-client-5.7.17-1.el7.x86_64.rpm
wget http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-community-server-5.7.17-1.el7.x86_64.rpm

 3、安装需要的扩展库

 

 

yum install -y libaio    //安装server时需要

 4、安装

 

 

rpm -ivh mysql-community-common-5.7.17-1.el7.x86_64.rpm --nosignature
rpm -ivh mysql-community-libs-5.7.17-1.el7.x86_64.rpm --nosignature
rpm -ivh mysql-community-client-5.7.17-1.el7.x86_64.rpm --nosignature
rpm -ivh mysql-community-server-5.7.17-1.el7.x86_64.rpm --nosignature

 提示:加上--nosignature是为了防止报签名错误

 

5、初始化

切换到mysql的bin目录

 

cd /usr/bin

 初始化mysql

 

 

mysqld --initialize-insecure --user=mysql     

 提示:-insecure设置root密码为空

 

修改mysql文件所有者(报找不到mysql.sock错误时需修改)

 

chown mysql:mysql -R /var/lib/mysql

 启动mysqld

 

 

systemctl start mysqld

 添加root用户密码

 

 

mysqladmin -u root password 密码

 登录mysql

 

 

mysql -u root -p

 设置mysql远程连接

 

 

grant all privileges on *.* to 'root'@'%' identified by 'MIRROR235mysql' with grant option; //root 是用户名,% 表示任意主机,'123456' 指定的登录密码(这个和本地的root密码可以设置不同,互不影响)
flush privileges; //重载系统权限  

 退出

 

 

quit

 安装php

 

1、切换到源码目录

cd /projects/lamp

 2、下载源码包

 

 

wget http://cn2.php.net/distributions/php-5.6.30.tar.gz

 3、安装所需的扩展库

 

 

yum -y install libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel

 4、解压、配置、编译、安装

 

 

tar -zvxf php-5.6.30.tar.gz

cd php-5.6.30

./configure --help   # 查看配置参数,因为每个版本的配置参数不一样

./configure \
--prefix=/usr/local/php \
--with-config-file-path=/usr/local/php/etc \
--with-apxs2=/usr/local/apache/bin/apxs \
--enable-mb \
--enable-bcmath \
--enable-mbstring \
--enable-sockets \
--with-curl \
--enable-ftp \
--enable-sockets \
--disable-ipv6 \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--enable-gd-native-ttf \
--with-iconv-t \
--with-zlib \
--with-pdo-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-mysql=mysqlnd \
--enable-dom \
--enable-xml \
--enable-fpm 

make&& make install

 5、配置php.ini

 

添加配置文件

 

cp /projects/lamp/php-5.6.30/php.ini-production /usr/local/php/lib/php.ini

 提示:因我configure时未指定配置文件位置,系统默认位置在/usr/local/php/lib下面

 

让apache支持php

编辑httpd.conf

 

vim /usr/local/apache/conf/httpd.conf

 找到DirectoryIndex,在index.html后添加

 

 

index.php

 

找到AddType,在之后添加一行

 

AddType application/x-httpd-php .php

 重启apache

 

 

/usr/local/apache/bin/apachectl -k restart

 6、测试

 

切换到apache默认的文档根目录

 

cd /usr/local/apache/htdocs/

 新增一个index.php

 

 

vim index.php

 写入内容:

 

 

 
  

 保存并退出

 

删除index.html

 

rm -f index.html

 测试能否访问到index.php

 

 

curl localhost

 提示:如打印出phpinfo页面则安装成功

 

 

7、安装动态扩展(以下两个扩展在用phpMyAdmin访问数据库时会用到)

例1、安装php的gettext扩展

切换到php源码包的gettext扩展目录

 

cd /projects/lamp/php-5.6.30/ext/gettext/

 

执行phpize

 

/usr/local/php/bin/phpize

 配置、编译、安装

 

 

./configure --with-php-config=/usr/local/php/bin/php-config --with-gettext

make&& make install

修改php.ini添加扩展

打开php.ini

 

 

vim /usr/local/php/lib/php.ini

 文件最后添加一行

 

 

extension=/usr/local/php/lib/php/extensions/no-debug-zts-20131226/gettext.so

 

提示:如未改动过扩展默认目录配置,可直接写成extension=gettext.so,其他扩展同理。

重启apache使配置生效

 

/usr/local/apache/bin/apachectl -k restart

例2、安装php的mbstring扩展

 

 

切换到php源码包的mbstring扩展目录

cd /projects/lamp/php-5.6.30/ext/mbstring/

 

执行phpize

/usr/local/php/bin/phpize

 

配置、编译、安装

./configure --with-php-config=/usr/local/php/bin/php-config --enable-mbstring

make&& make install

 

修改php.ini添加扩展

打开php.ini

vim /usr/local/php/lib/php.ini

 文件最后添加一行

extension=mbstring.so

 

重启apache使配置生效

/usr/local/apache/bin/apachectl -k restart

 

安装phpMyAdmin

1、切换到源码目录

cd /projects/lamp/

 2、下载

wget https://files.phpmyadmin.Net/phpMyAdmin/4.6.5.2/phpMyAdmin-4.6.5.2-all-languages.tar.gz

 3、解压

tar -zvxf phpMyAdmin-4.6.5.2-all-languages.tar.gz

4、复制解压后文件到apache网站根目录pma文件夹下

cp -fr phpMyAdmin-4.6.5.2-all-languages /usr/local/apache/htdocs/pma

5、浏览器输入IP地址/pma访问

 

问题1:访问时如提示缺少mysqli扩展,添加mysqli扩展

解决:动态添加php的mysqli扩展

 

切换到php源码包的mysqli扩展目录

 

cd /projects/lamp/php-5.6.30/ext/mysqli/

 

 

执行phpize

 

/usr/local/php/bin/phpize

 

 

配置

 

./configure --with-php-config=/usr/local/php/bin/php-config --with-mysqli=mysqlnd

 

 

编译安装

 

make && make install

 

 

修改php.ini添加扩展

打开php.ini

 

文件最后添加一行

 

extension=mbstring.so

 

 

重启apache

 

 

/usr/local/apache/bin/apachectl -k restart

 

 

问题2:提示‘mysqli_real_connect():(HY000/2002): 没有那个文件或目录’错误

 

解决:

修改php.ini

打开php.ini

 

vim /usr/local/php/lib/php.ini

修改pdo_mysql.default_socket=/var/lib/mysql/mysql.sock(mysql.sock地址)

 

修改mysqli.default_socket =/var/lib/mysql/mysql.sock

 

重启apache

 

/usr/local/apache/bin/apachectl -k restart

 

 

如果还不行:

修改mysql.default_socket =/var/lib/mysql/mysql.sock

 

ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

 

 

重启apache

 

/usr/local/apache/bin/apachectl -k restart

 

 

后续

1、将apache命令加入到环境变量中

打开profile文件

 

vim /etc/profile

 

文件最后添加一行

 

PATH=/usr/local/apache/bin:$PATH

 

使配置生效

 

source /etc/profile

 

 

2、设置httpd开机自启

切换到系统service目录

 

cd /lib/systemd/system

 新建一个httpd.service文件

 

 

vim httpd.service

 写入如下数据:

 

 

 

[Unit]
Description=ApacheServer
After=network.target

[Install]
WantedBy=multi-user.target

[Service]
Type=forking
ExecStart=/usr/local/apache/bin/apachectl-k start
ExecReload=/usr/local/apache/bin/apachectl-k restart
ExecStop=/usr/local/apache/bin/apachectl-k stop
PrivateTmp=true

保存并退出

 

设置httpd.service开机自启

 

systemctl enable httpd.service

 重启电脑

 

 

shutdown -r now

 查看是否自启

 

 

ps -ef | grep httpd

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(PHP,LAMP)