1. 程式人生 > >centos6.9下PHP7.1.10和apache2.4.29安裝

centos6.9下PHP7.1.10和apache2.4.29安裝

網上的大多攻略都比較老了,自己記錄下來以備後查

先下載一些需要用到的軟體安裝包或原始碼(可自行到官網下載最新版)

apache 下載地址http://mirror.bit.edu.cn/apache/httpd/httpd-2.4.29.tar.gz

php下載地址http://cl1.php.net/get/php-7.1.10.tar.gz/from/this/mirror

apr   http://mirrors.noc.im/apache//apr/apr-1.5.2.tar.bz2
apr-util    http://mirrors.noc.im/apache//apr/apr-util-1.5.4.tar.bz2
pcre http://iweb.dl.sourceforge.net/project/pcre/pcre/8.38/pcre-8.38.zip


安裝前先將以前安裝的環境解除安裝乾淨,這一步很重要

#rpm -qa|grep httpd

將列出的相關包都刪除,如下圖


刪除與httpd有關的檔案


php相關檔案也用相同的方法刪除


將安裝包放到/home/phpsource 目錄可以自己隨便建立

#cd /home/phpsource



先安裝apache

安裝apr
#cd apr-1.5.2
#./configure  --prefix=/usr/local/apr
#Make && make install

安裝apr-util
#cd ../apr-util-1.5.4
#./configure  --prefix=/usr/local/apr-util  --with-apr=/usr/local/apr
#Make && make install

pcre的安裝
#cd ../pcre-8.40
#./configure  --prefix=/usr/local/pcre
#make && make install

有時候可能會出錯,如configure: error: You need a C++ compiler for C++support,
缺少C++元件 可以通過執行#yum install -y gcc gcc-c++

安裝apache

#cd ../httpd-2.4.29

指定安裝路徑,指定3個依賴包安裝目錄,讓apache核心裝載DSO,啟用重寫功能
#./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre  --enable-so --enable-rewrite

#make
#make install

將httpd(Apache)設定為啟動服務
# cp /usr/local/apache2/bin/apachectl   /etc/rc.d/init.d/httpd
開啟/etc/rc.d/init.d/httpd檔案,在# !/bin/sh下面新增
# chkconfig: 2345 50 90
# description: Activates/Deactivates ApacheWeb Server

執行chkconfig把Apache新增到系統的啟動服務組裡面
# chkconfig  --add  httpd
# chkconfig  httpd  on

建立專案根目錄

#mkdir /var/www/html/

修改apache配置

#vim /usr/local/apache2/conf/httpd.conf


至此apache安裝完成

#service httpd start     啟動apache

#ps -ef|grep httpd 檢視httpd程序

下一步PHP安裝

#cd  /home/phpsource/php-7.1.10

指定安裝目錄並開啟gd庫等擴充套件

#./configure --prefix=/usr/local/php7 \
 --with-apxs2=/usr/local/apache2/bin/apxs \
 --with-curl \
 --with-freetype-dir \
 --with-gd \
 --with-gettext \
 --with-iconv-dir \
 --with-kerberos \
 --with-libdir=lib64 \
 --with-libxml-dir \
 --with-mysqli \
 --with-openssl \
 --with-pcre-regex \
 --with-pdo-mysql \
 --with-pdo-sqlite \
 --with-pear \
 --with-png-dir \
 --with-xmlrpc \
 --with-xsl \
 --with-zlib \
 --enable-fpm \
 --enable-bcmath \
 --enable-libxml \
 --enable-inline-optimization \
 --enable-gd-native-ttf \
 --enable-mbregex \
 --enable-mbstring \
 --enable-opcache \
 --enable-pcntl \
 --enable-shmop \
 --enable-soap \
 --enable-sockets \
 --enable-sysvsem \
 --enable-xml \
 --enable-zip
這一步會遇到一些報錯,提示各種依賴缺失,按照提示一個一個用yum安裝就行,常見的依賴有以下幾種

#yum install libxml2-devel.x86_64
#yum  install  openssl.x86_64 openssl-devel.x86_64 -y

configure: error: Please reinstall the BZip2 distribution
這是bzip2軟體包沒有安裝,解決辦法
#yum install bzip2-devel.x86_64 -y

onfigure: error: Please reinstall the libcurl distribution -
    easy.h should be in <curl-dir>/include/curl/
curl和curl庫檔案沒有安裝,解決辦法
#yum install libcurl.x86_64 libcurl-devel.x86_64 -y

configure: error: jpeglib.h not found
GD庫沒有安裝,解決辦法
#yum install libjpeg.x86_64 libpng.x86_64 freetype.x86_64 libjpeg-devel.x86_64 libpng-devel.x86_64 freetype-devel.x86_64 -y


#make 

#make install

安裝完成後將php.ini-development 複製到/usr/local/php7/lib/php.ini

# cp php.ini-development   /usr/local/php7/lib/php.ini

配置apache支援php

#vim /usr/local/apache2/conf/httpd.conf

新增AddType application/x-httpd-php .php .html,並修改預設起始頁面




新增PHP和Apache環境變數

#vim /etc/profile  新增上export PATH=/usr/local/php7/bin:/usr/local/apache2/bin:$PATH

#source /etc/profile修改環境變數後需要執行該指令才會生效



然後執行php  -v 和httpd -v  檢視安裝的版本號

在這裡我犯了個錯誤 DirectoryIndex 後面的index.php和index.html之間是空格,不能加逗號,找了半天才發現原因;index.php和index.html誰放在前面就優先解析誰

安裝完成後重啟apache  

#service httpd restart

在/var/www/html下建立index.php輸出phpinfo(),然後訪問localhost看看是否能執行php。

至此apache和php基礎環境搭建完成。