Ubuntu下利用安装包手动安装Apache和Php

前言

首先说一下,Ubuntu中常用的安装软件的方法有两种:

1. apt-get方法

使用apt-get install来安装应用程序算是最常见的一种安装方法,apt-get的基本软件安装命令是:

sudo apt-get install 软件名

2. make install源代码安装

源代码安装就是从官网下载软件的完整安装包进行安装。源码安装大致可以分为三步骤:(./configure)–> 编译(make) –> 安装(make install)。

  • 配置:这是编译源代码的第一步,通过 ./configure 命令完成。执行此步以便为编译源代码作准备。常用的选项有 --prefix=PREFIX,用以指定程序的安装位置。更多的选项可通过 --help 查询。也有某些程序无需执行此步。
  • 编译:一旦配置通过,可使用 make 指令来执行源代码的编译过程。视软件的具体情况而定,编译所需的时间也各有差异,我们所要做的就是耐心等候和静观其变。此步虽然指令简单,但有时候所遇到的问题却十分复杂。较常碰到的情形是程序编译到中途却无法圆满结束。如果make过后提示各种error,则需要根据出错提示找出错误,然后重新执行make指令。
  • 安装:如果编译没有问题,那么执行 sudo make install 就可以将程序安装到系统中了,程序的默认安装路径一般是/usr/local/软件名/

本文采用第二种方法,也就是从官网下载安装包来安装Apache和php。原因有二:

  1. 对于Ubuntu新手来说,利用命令行的方式安装,并不能帮助提高Ubuntu的使用技能,尤其是对于软件的安装位置,配置环境等信息的获取而言。如果后期配置环境发生变化,或者需要增加php扩展或者Apache模块等,会给使用者造成极大的困扰。
  2. 利用命令行安装Apache和php的方式,会对二者环境变量的配置造成很大的麻烦。因为安装者往往需要借助Apache来显示php网页,但是如果安装的Apache和php版本不兼容,或者安装过程中出现错误等等原因,导致Apache不能正常解析php页面时,会给安装者带来无穷的麻烦。

安装过程

1. 准备

系统信息:Ubuntu14.04.1
Apache版本:2.2.31,安装包名为httpd-2.2.31.tar.gz。
php版本:5.6.24,安装包名为php-5.6.24.tar.bz2。

:可以在http://cn2.php.net/releases/ 下载php安装包;可以在Apache下载站点http://httpd.apache.org/ 下载Apache安装包。

2. 安装Apache

首先对httpd-2.2.31.tar.gz进行解压缩,然后进入文件夹,开始用./configuremakemake install三步曲安装Apache。命令如下:

tar xvf httpd-2.2.31.tar.gz
cd httpd-2.2.31
./configure --enable-rewrite=shared
make
make install

  1. ./configure可以带有很多选项,可利用”./configure --help”进行查看。例如本文示例,需要开启Apache的rewrite模块,就采用了” --enable-rewrite=shared”选项。具体情况视自己需要而定。
  2. ./configure运行过后如果出现错误,请把错误解决之后再进行后续操作,否则”make”指令不可能成功。
  3. 如果指令异常,请采用sudo方式利用管理员权限运行。
  4. 本文采用默认安装路径,安装如果顺利完成,那么Apache已经被安装在路径/usr/local/apache2

3. 启动Apache

之后,可以使用如下命令启动 Apache 服务器:

/usr/local/apache2/bin/apachectl start

如果成功,可以停止 Apache 服务器并继续安装 PHP:

/usr/local/apache2/bin/apachectl stop

  1. 如果启动失败,请查看端口是否被占用。如果端口被占用,则重启系统,或者kill掉占用端口的进程,再进行启动。

  2. start指令可以被换为stoprestart

  3. 如果想要Apache开机自启动,在Ubuntu14.04.1系统环境下,修改/etc/rc.local文件。在语句”exit 0”前面添加如下语句:

     /usr/local/apache2/bin/apachectl start
    
  4. (可选)配置Apache,编辑/usr/local/apache2/conf/httpd.conf,加入如下两句:

     ServerName localhost
     DirectoryIndex index.html index.htm index.php
    
  5. 正常启动Apache后,打开浏览器,输入localhost,如果看到“It works!”的页面,说明Apache已经成功安装了。
    1

4. 配置并编译 PHP

在这里可以用各种各样的参数来自定义 PHP,例如启动哪些扩展功能包的支持等。用 ./configure --help 命令可以列出当前可用的所有参数。在此例中,将给出一个在有 MySQL 支持的 Apache 2 上进行配置的范例,该范例开启了php的opensslmbstringmcrypttokenizerpdo-mysql模块。

如果按照上面的说明从源代码编译了 Apache,下面的例子会正确匹配 apxs 的路径。如果通过其他方式安装了 Apache,需要相应的调整 apxs 的路径。注意,在有些发行版本中,可能将 apxs 更名为 apxs2

tar xvf php-5.6.24.tar.bz2
cd php-5.6.24
./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql --with-openssl --enable-mbstring --with-mcrypt --enable-tokenizer --with-pdo-mysql
make
make install

  1. 如果想要在安装后改变配置选项,例如想增加php的mcrypt模块,只需重复最后的三步 configure(注意要在此处选取合适的参数),make,以及 make install,然后需要重新启动 Apache 使新模块生效。Apache 不需要重新编译。
  2. 本例为了说明,在”./configure”后加入了诸多参数,如无特殊要求,./configure --with-apxs2=/usr/local/apache2/bin/apxs即可。
  3. 请注意,除非明确有提示,否则make install命令将安装 PEAR、各种 PHP 工具诸如 phpize,并安装 PHP CLI 等等。
  4. 如果”./configure”,”make”,”make install”中的任何一步出现了error,请修正错误后再进行后续操作,否则会导致安装失败。
  5. make过后系统可能会提示你运行make test,注意,这一指令将耗费较长的时间,且该指令是可选项,运行时请注意。

5. 配置 php.ini

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

  1. 可以编辑 php.ini 来设置 PHP 运行时的选项。如果想要把此文件放到另外的位置,需要在./configure时添加 --with-config-file-path=/path 选项。
  2. 如果选择了php.ini-production,请务必阅读其中的变更列表,它们将影响 PHP 的执行。

6. 正确配置Apache以调用PHP模块

编辑 httpd.conf 文件以调用 PHP 模块。LoadModule 表达式右边的路径必须指向系统中的 PHP 模块。以上的 make install 命令可能已经自动修改了httpd.conf文件,但请务必要检查该处,否则会出现php页面的解析错误。在httpd.conf文件中添加如下语句:

LoadModule php5_module modules/libphp5.so


1.如果像本文上述安装Apache的方式一样,安装者也开启了Apache的rewrite模块,则需要在httpd.conf中同时添加语句:LoadModule rewrite_module modules/mod_rewrite.so
2. 根据上述的安装方式,httpd.conf在文件夹/usr/local/apache2/conf/中。
3. 模块文件在/usr/local/apache2/modules/中。如下图所示。
2

7. 告知 Apache 将特定的扩展名解析成PHP

例如,让 Apache 将扩展名 .php 解析成 PHP。为了避免潜在的危险,例如上传或者创建类似 exploit.php.jpg 的文件并被当做 PHP 执行,本文不再使用 Apache 的 AddType 指令来设置。参考下面的例子,你可以简单的将需要的扩展名解释为 PHP。

httpd.conf中添加如下语句:
3
或者,你也想将 .php,.php2,.php3,.php4,.php5,.php6,以及 .phtml 文件都当做 PHP 来运行,我们无需额外的设置,仅需按照下面这样来:
4

8. 按照通常的方式启动 Apache 服务

/usr/local/apache2/bin/apachectl start

或者

service httpd restart

5

9. 最后测试是否配置成功

/usr/local/apache2/htdocs/文件夹下,新建空白文档,重命名为test.php,在文档中加入如下代码并保存:
6
打开浏览器,输入localhost/test.php,如果看到“我的 PHP 脚本!”,那么恭喜你!你已经成功完成了Apache和php的安装了!!!!
7

最后说两句

  1. 当然 Apache 和 PHP 都还有很多配置选项,可以在相应的源代码目录中使用 ./configure --help 获得更多信息。
  2. 根据我的个人经验,安装过程中如果出现问题,最好官网上去看官方文档,不推荐用百度等搜索引擎去网上搜解决办法,因为你可能会走很多弯路,而且最后不一定能解决问题。如果能静下心来认真的看官方文档,相信80%的错误你都能找到解决方案!

猜你喜欢

转载自blog.csdn.net/u014261408/article/details/90084446
今日推荐