Ubuntu14.04下安装LAMP环境,以及源码安装PHP5.6和Apache2.4

安装Apache

  • 在Ubunt14.04下很多功能都在apache2这个软件包中了,不在区分mpm-work,mpm-prefork,mpm-event等软件包了,因此我们可以直接安装apache2

    ### sudo apt-get install apache2 -y

注意:这边的-y是为了方便安装,加上它就不需要在进行安装确认,简单粗暴一键完成

安装Apache的PHP模块

  • 在Ubuntu14.04中Apache的PHP模块有两个软件包,分别是:libapache2-mod-PHP5和libapache2-mod-PHP5filter.大多数情况下应该使用第一个

    ###  sudo apt-get install libapache2-mod-PHP5 -y
    www文件认是在 /var/www/html
    ###  sudo service apache2 restart
    可重新启动apache

安装PHP5的MysqL模块

安装MysqL

  • 客户和服务一起,在安装的过程中系统会提示你输入密码这个这时候需要输入密码

    ### sudo apt-get MysqL-server MysqL-clien 
    ### sudo service MysqL restart
    可重新启动MysqL
  • 其实到这里就可以浏览测试网页了,如果在访问PHP页面不能正常显示首先要确保测试代码正确

    ### sudo a2enmod PHP5
    ### sudo service apache2 restart
    同时清理下浏览器缓存

LAMP卸载

  • 如果要卸载LAMP相关软件包,则需要以下代码来实现

    ### sudo apt-get purge apache* MysqL* PHP* 
    就可以删除相关软件包
  • 为了方便管理我们这里还列举了另外一种安装方式,源码安装PHP5.6以及Apache2.4,因为在Ubuntu14.04下PHP的版本为5.5.9针对一些PHP版本要求高一点的apt-get的就做不到了,因此用源码安装方式不为是一种好方法,而且灵活性,易用性都很高。

安装Apache

  • 在安装Apache前需要安装3个依赖

    **Apr(apache portable runtime)**
    
    **Apr-Util**
    
    **pcre**(语言兼容正则表达式)
cd /usr/local/src  将安装包统一放在一个目录
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
wget http://downloads.sourceforge.net/project/pcre/pcre/8.39/pcre-8.39.tar.gz   (需要电脑能够上网)
wget http://mirrors.cnnic.cn/apache//httpd/httpd-2.4.23.tar.bz2
  • 下载,解压apr的源码包,并且编译安装

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

第一步操作是解压源码包,之后进入源码包输入./configure .....
--prefix的意思是指定安装文件路径,我们上面指定的路径/usr/local/apr,apr文件夹一开始是不存在的我们也不需要创建他指令执行完之后就会自动生成

make 是编译 make install 是安装

  • 下载,解压apr-util源码包,并且编译安装

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

相对于上面安装apr只是多了 --with-apr=/usr/local/apr 因为安装apr-util依赖apr

  • 编译安装pcre,这里安装 pcre不指定安装路径,认会安装在/usr/local/bin下面.

  • 不过在开始安装之前我们需要装一些基本编译环境

    ### sudo apt-get install build-essential 
    
    由于ubuntu下自带有c/c++编译,只需要安装上面那一个就可以了
tar -zxvf pcre-8.39.tar.gz
    cd pcre-8.39
    ./configure && make && make install
  • 现在我们可以正式安装apache了

tar -zxvf httpd-2.4.23.tar.bz2
cd httpd-2.4.23
./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util && make && make install

安装apache的时候需要依赖前面我们装的apr和apr-util

这个时候在/usr/local/可以下看到apache目录,web页面是存放于htdocs文件夹下

如果需要使用service httpd start的方式启动apache服务,需要执行如下的命令 :

cp /usr/local/apache/bin/apachectl /etc/init.d/apache

如果出现错误的话这里可能会出现

error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory
  • 这样的错误解决方法是:

    ### ln -s /usr/local/lib/libpcre.so.1 /lib
    
    在重新启动一下就可以拉

至此,执行service apache start启动服务,访问127.0.0.1(如果是服务器搭建在本机的话)可以看到页面输出It's work.

安装PHP5.6

  • 可以从官网上面下载我们所需要的安装包

http://PHP.net/get/PHP-5.6.31.tar.gz/from/a/mirror/PHP-5.6.31.tar.gz
链接如果失败则需要自己从官网上面在下载相应的安装包下来
./configure \
--prefix=/usr/local/PHP/ \
--with-config-file-path=/usr/local/PHP/etc \
--with-config-file-scan-dir=/usr/local/PHP/etc/conf.d \
--enable-soap \
--with-openssl \
--with-mcrypt \
--with-pcre-regex \
--with-sqlite3 \
--with-zlib \
--enable-bcmath \
--with-iconv \
--with-bz2 \
--enable-calendar \
--with-curl \
--with-cdb \
--enable-dom \
--enable-exif \
--enable-fileinf \
--enable-filter \
--with-pcre-dir \
--enable-ftp \
--with-gd \
--with-openssl-dir \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-gettext \
--with-gmp \
--with-mhash \
--enable-json \
--enable-mbstring \
--disable-mbregex \
--disable-mbregex-backtrack \
--with-libmbfl \
--with-onig \
--enable-pdo \
--with-pdo-MysqL \
--with-zlib-dir \
--with-pdo-sqlite \
--with-readline \
--enable-session \
--enable-shmop \
--enable-simplexml \
--enable-sockets \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-wddx \
--with-libxml-dir \
--with-xsl \
--enable-zip \
--enable-MysqLnd-compression-support \
--with-pear \
--with-MysqLi \
--with-apxs2=/usr/local/apache/bin/apxs

我们可以看到上面的./configure 的参数有很多可以选择性安装
--with-config-file-path和--with-config-file-scan-dir指定了配置文件的放置路径

当然到这里问题也就来了,可能会发生很多错误,不过不要紧
上有政策上有对策,一般错误问题都可以在度娘找得到

我这边简单列举几个
错误一:
configure: error: xml2-config not found. Please check your libxml2 installation.
而我已经安装过了libxml2,但是还是有这个提示解决办法:
# sudo apt-get install libxml2-dev

错误二:
configure: error: Please reinstall the BZip2 distribution
而我也已经安装了bzip2,网上找到得解决方案都是需要安装bzip2-dev,可是11.10里面没有这个库。
解决办法:在网上找到bzip2-1.0.5.tar.gz,解压,直接make,sudo make install.(我使用的该源来自于http://ishare.iask.sina.com.cn/f/9769001.html)

错误三:
configure: error: Please reinstall the libcurl distribution -easy.h should be in /include/curl/
解决办法:
# sudo apt-get install libcurl4-gnutls-dev

错误四:
configure: error: jpeglib.h not found.
解决办法:
# sudo apt-get install libjpeg-dev

错误五:
configure: error: png.h not found.
解决办法:
# sudo apt-get install libpng-dev

错误六:
configure: error: libXpm.(a|so) not found.
解决办法:
# sudo apt-get install libxpm-dev

错误七:
configure: error: freetype.h not found.
解决办法:
# sudo apt-get install libfreetype6-dev

错误八:
configure: error: Your t1lib distribution is not installed correctly. Please reinstall it.
解决办法:
# sudo apt-get install libt1-dev

错误九:
configure: error: mcrypt.h not found. Please reinstall libmcrypt.
解决办法:
# sudo apt-get install libmcrypt-dev

错误十:
configure: error: Cannot find MysqL header files under yes.
Note that the MysqL client library is not bundled anymore!
解决办法:
# sudo apt-get install libMysqL++-dev

错误十一:
configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution
解决办法:
# sudo apt-get install libxslt1-dev
可见PHP源码安装之前需要先安装这些依赖,详细可见http://forum.ubuntu.org.cn/viewtopic.PHP?f=88&t=231159
如上错误解决之后,再次./config….没有错误之后,
# make
# make install
如果说装了对于的安装包之后还不行的话那么就要在继续找
apt-get 装完了安装包没有反应的话或许需要源码包安装,两种方式都可以试一下,centos下的安装包和Ubuntu下的略有名字略有不同,不过功能是一样的
cp /usr/local/src/PHP-5.6.28/PHP.ini-production /usr/local/PHP/etc/PHP.ini
  • 但是,这个时候apache是没有办法执行以PHP结尾的文件,要想让apache能够执行以PHP结尾的文件,还需要做一件事情:找到apache的主配置文件/usr/local/apache/conf/httpd.conf,在AddType application/x-compress .Z的后面添加两行:

AddType application/x-httpd-PHP .PHP
AddType application/x-httpd-PHP-source .PHPs

再找到DirectoryIndex index.html这一行,在index.html前面添加index.PHP,这里index.html跟index.ph的先后顺序表明了如果同时存在index.html跟inde.PHP的时候.访问主页优先选择index.PHP.

执行service apache restart,然后执行echo "<?PHP PHPinfo();" >> /usr/local/apache/htdocs/index.PHP生成index.PHP文件,访问主页,应该可以看到有关PHP的信息.

至此PHP跟apache安装完毕

有关参考https://segmentfault.com/a/11...有关书籍《Ubuntu最佳方案》同时也推荐给大家是一本挺不错的书籍喔 冷罡华先生编著

相关文章

目录前言一、创建Hadoop用户二、更新apt和安装Vim编辑器三、...
原文连接:https://www.cnblogs.com/yasmi/p/5192694.html ...
电脑重启后,打开VirtualBox,发现一直用的虚拟机莫名的消失...
参见:https://blog.csdn.net/weixin_38883338/article/deta...
Ubuntu 18.04 LTS 已切换到 Netplan 来配置网络接口。Netpla...
介绍每个 Web 服务都可以通过特定的 URL 在 Internet 上访问...