centos7.2 lamp環境安裝搭建(基於阿里雲ECS伺服器)
centos7.2 lamp環境安裝搭建
centos7.2 + apache2.4.23 + mysql5.7.14 + php7.0.9 + phpMyAdmin4.6.3
這是我在一臺新裝的 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 -xzvfapr-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.tar.gz
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.23.tar.gz
3、解壓、配置、編譯、安裝
tar -xzvfhttpd-2.4.23.tar.gz
cd httpd-2.4.23
./configure \
--prefix=/usr/local/apache2 \
--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/apache2/conf
vim開啟配置檔案
vim httpd.conf
去掉ServerName前的註釋,修改為localhost:80
5、啟動apache服務
/usr/local/apache2/bin/apachectlstart
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.14-1.el7.x86_64.rpm
wget http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-community-libs-5.7.14-1.el7.x86_64.rpm
wget http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-community-client-5.7.14-1.el7.x86_64.rpm
wget http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-community-server-5.7.14-1.el7.x86_64.rpm
3、安裝需要的擴充套件庫
yum install -y libaio //安裝server時需要
4、安裝
rpm -ivh mysql-community-common-5.7.14-1.el7.x86_64.rpm --nosignature
rpm -ivh mysql-community-libs-5.7.14-1.el7.x86_64.rpm --nosignature
rpm -ivh mysql-community-client-5.7.14-1.el7.x86_64.rpm --nosignature
rpm -ivh mysql-community-server-5.7.14-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
退出
quit
安裝php
1、切換到原始碼目錄
cd /projects/lamp
2、下載原始碼包
wget http://cn2.PHP.net/distributions/php-7.0.9.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-7.0.9.tar.gz
cd php-7.0.9
./configure \
--prefix=/usr/local/php7 \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-mysqli=shared,mysqlnd \
--with-pdo-mysql=shared,mysqlnd
提示:此處只配置了這幾項,其他擴充套件可以通過新增動態擴充套件方式開啟(見第7步)
make&& make install
5、配置php.ini
新增配置檔案
cp /projects/lamp/php-7.0.9/php.ini-production /usr/local/php7/lib/php.ini
提示:因我configure時未指定配置檔案位置,系統預設位置在/usr/local/php7/lib下面
讓apache支援php
編輯httpd.conf
vim /usr/local/apache2/conf/httpd.conf
找到DirectoryIndex,在index.html後新增
index.php
找到AddType,在之後新增一行
AddType application/x-httpd-php .php
重啟apache
/usr/local/apache2/bin/apachectl -k restart
6、測試
切換到apache預設的文件根目錄
cd /usr/local/apache2/htdocs/
新增一個index.php
vim index.php
寫入內容:
<?php
phpinfo();
儲存並退出
刪除index.html
rm -f index.html
測試能否訪問到index.php
curl localhost
提示:如打印出phpinfo頁面則安裝成功
7、安裝動態擴充套件(以下兩個擴充套件在用phpMyAdmin訪問資料庫時會用到)
例1、安裝php的gettext擴充套件
切換到php原始碼包的gettext擴充套件目錄
cd /projects/lamp/php-7.0.9/ext/gettext/
執行phpize
/usr/local/php7/bin/phpize
配置、編譯、安裝
./configure --with-php-config=/usr/local/php7/bin/php-config --with-gettext
make&& make install
修改php.ini新增擴充套件
開啟php.ini
vim /usr/local/php7/lib/php.ini
檔案最後新增一行
extension=/usr/local/php7/lib/php/extensions/no-debug-zts-20151012/gettext.so
提示:如未改動過擴充套件預設目錄配置,可直接寫成extension=gettext.so,其他擴充套件同理。
重啟apache使配置生效
/usr/local/apache2/bin/apachectl -k restart
例2、安裝php的mbstring擴充套件
切換到php原始碼包的mbstring擴充套件目錄
cd /projects/lamp/php-7.0.9/ext/mbstring/
執行phpize
/usr/local/php7/bin/phpize
配置、編譯、安裝
./configure --with-php-config=/usr/local/php7/bin/php-config --enable-mbstring
make&& make install
修改php.ini新增擴充套件
開啟php.ini
vim /usr/local/php7/lib/php.ini
檔案最後新增一行
extension=mbstring.so
重啟apache使配置生效
/usr/local/apache2/bin/apachectl -k restart
安裝phpMyAdmin
1、切換到原始碼目錄
cd /projects/lamp/
2、下載
wget https://files.phpmyadmin.Net/phpMyAdmin/4.6.3/phpMyAdmin-4.6.3-all-languages.tar.gz
3、解壓
tar -zvxf phpMyAdmin-4.6.3-all-languages.tar.gz
4、複製解壓後文件到apache網站根目錄pma資料夾下
cp -fr phpMyAdmin-4.6.3-all-languages /usr/local/apache2/htdocs/pma
5、瀏覽器輸入IP地址/pma訪問
問題1:訪問時如提示缺少mysqli擴充套件,新增mysqli擴充套件
解決:動態新增php的mysqli擴充套件
切換到php原始碼包的mysqli擴充套件目錄
cd /projects/lamp/php-7.0.9/ext/mysqli/
執行phpize
/usr/local/php7/bin/phpize
配置
./configure --with-php-config=/usr/local/php7/bin/php-config --with-mysqli=mysqlnd
編譯安裝
make && make install
修改php.ini新增擴充套件
開啟php.ini
vim /usr/local/php7/lib/php.ini
檔案最後新增一行
extension=mbstring.so
重啟apache
/usr/local/apache2/bin/apachectl -k restart
問題2:提示‘mysqli_real_connect():(HY000/2002): 沒有那個檔案或目錄’錯誤
解決:
修改php.ini
開啟phi.ini
vim /usr/local/php7/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/apache2/bin/apachectl -k restart
後續
1、將apache命令加入到環境變數中
開啟profile檔案
vim /etc/profile
檔案最後新增一行
PATH=/usr/local/apache2/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/apache2/bin/apachectl-k start
ExecReload=/usr/local/apache2/bin/apachectl-k restart
ExecStop=/usr/local/apache2/bin/apachectl-k stop
PrivateTmp=true
儲存並退出
設定httpd.service開機自啟
systemctl enable httpd.service
重啟電腦
shutdown -r now
檢視是否自啟
ps -ef | grep httpd