Ubuntu 16.04 下配置Apache2.4 + PHP7

壹  下载Apache 和 PHP源码包:

Apache:http://httpd.apache.org/download.cgi

PHP:http://php.net/downloads.php

贰  安装依赖:

一、养成update,upgrade的好习惯,以免之后因为系统没更新而报错。

1、sudo apt-get update

这个命令,会访问源列表里的每个网址,并读取软件列表,然后保存在本地电脑。我们在新立得软件包管理器里看到的软件列表,都是通过update命令更新的。

update后,可能需要upgrade一下。

2、sudo apt-get upgrade

这个命令,会把本地已安装的软件,与刚下载的软件列表里对应软件进行对比,如果发现已安装的软件版本太低,就会提示你更新。如果你的软件都是最新版本,会提示:升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。

***总而言之,update是更新软件列表,upgrade是更新软件。

二 、需要的依赖:可能不是都需要,都装了也没啥错。

sudo apt-get install build-essential (这个包会自动安装上g++,libc6-dev,linux-libc-dev,libstdc++6-4.1-dev等一些必须的软件和头文件的库。)

sudo apt install libapr1-dev libaprutil1-dev

sudo apt install libpcre3-dev zlib1g-dev

apt-get install libxml2-dev (以免这个报错:在某些平台上,您可能需要安装相应的-dev包,以允许httpd与您安装的APR和APR-Util进行构建。)

apt-get install libexpat-dev

apt-get install openssl libssl-dev
apt-get install make
apt-get install curl libcurl4-gnutls-dev
apt-get install libfreetype6-dev
apt-get install libjpeg-dev libpng12-dev
apt-get install libmcrypt-dev
apt-get install libreadline6 libreadline6-dev

APR:wget http://mirrors.hust.edu.cn/apache//apr/apr-1.6.2.tar.gz(可以不手动安,在编译apache时加:--with-included-apr)

APR-UTIL:wget http://mirrors.hust.edu.cn/apache//apr/apr-util-1.6.0.tar.gz  (可以不手动安,在编译apache时加:--with-included-apr)

PCRE:wget https://ftp.pcre.org/pub/pcre/pcre-8.41.tar.gz (手动装一下)

叄  编译安装apache:

一、这个大体流程都是:


1、解压源码包:                                     tar -zxvf httpd-2.4.34.tar.gz

2、cd到解压的目录下:                          cd httpd-2.4.34

3、在上面的目录下执行编译:               ./configure --prefix=/opt/apache2 --enable-so --with-included-apr
                                                                (--prefix=/opt/apache2:--prefix=后面接你指定的安装目录
                                                                --enable-so:让apache核心装载DSO
                                                               --with-included-apr:让之前不需要手动安装apr。apr-util

4、make  clean                                       make clean (清理之前的安装环境,以免后面莫名其妙的报错)

5、make                                                 make

6、make install                                       make install


二、检验Apache网站是否开通:

打开浏览器,输入网址:http://localhost/  或者  localhost:80  或者你服务器的IP, 看到  It works  就行了 。

例如:

 

三、httpd和apachectl命令:

当我们安装好apache服务器后通常会在Serverroot/bin/目录形成一些相关的执行命令,其中httpd文件是apache服务器的主程序。其被设计为一个独立运行的后台进程,它会建立一个处理请求的子进程或线程的池。Apache服务器的所有相关操作都可以通过httpd命令进行完成,但是通常情况下我们并不建议这么做,而是通过同一目录下的apachectl命令通过调用httpd命令的方式来完成对服务器的开启,关闭等相关的操作的。

apachectl -k start|restart|graceful|graceful-stop|stop

cd /opt/apache/bin    这个目录下有apachectl文件。

./apachectl start        在上面的目录下执行这个命令。

若没有这个命令。可以在环境变量里设置:export PATH=/usr/apache/bin:$PATH。也可能是之前没有make clean。

或者:

httpd -k start|restart|graceful|graceful-stop|stop

cd /opt/apache/bin 

./httpd

肆、编译安装PHP:

一、装好后把PHP解压包里的php.ini-development或者php.ini-production文件拷贝到PHP安装目录下的/etc目录下,修改为php.ini,确保测试环境(本地)与正式环境(线上)一致。

cp php.ini-production  /opt/php/etc/php.ini

php.ini-development ,对应于php.ini-dist,适合开发程式使用(测试用)

php.ini-production ,对应于php.ini-recommended,拥有较高的安全性设定,则适合上线当产品使用

官方说明:

二、创建一个目录存放网站文件(随意创建,自己喜欢就好,但是一般用这个路径):

mkdir /var/www
mkdir /var/www/html

注意事项:

1、一般来说,在make的时候,会重新生成objects, 也就说新的object覆盖旧的objects,所以貌似make命令本身应该是包含了make clean的功能。但是,实际用的时候,比如多次编译调试运行,有时候会遇到一些莫名其妙的问题,去百度查查,高手们一般都会支招说先make clean一下,再重新make。所以,建议大家修改了一些关键头文件、或者改动量比较大、或者修改了比较多的问题点时,先make clean一下,再进行make,确保整个工程能够重新正确的编译。

猜你喜欢

转载自www.cnblogs.com/sinsenliu/p/9359175.html