首先说一下,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。
2.安装Apache
首先对httpd-2.2.31.tar.gz进行解压缩,然后进入文件夹,开始用”./configure”,”make”,”make
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指令可以被换为stop,restart。
3. 如果想要Apache开机自启动,在Ubuntu14.04.1系统环境下,修改/ect/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已经成功安装了。
4.配置并编译
PHP
在这里可以用各种各样的参数来自定义 PHP,例如启动哪些扩展功能包的支持等。用
./configure --help 命令可以列出当前可用的所有参数。在此例中,将给出一个在有 MySQL 支持的 Apache 2 上进行配置的范例,该范例开启了php的openssl,mbstring,mcrypt,tokenizer,pdo-mysql模块。。
如果按照上面的说明从源代码编译了 Apache,下面的例子会正确匹配
apxs 的路径。如果通过其他方式安装了 Apache,需要相应的调整
apxs 的路径。注意,在有些发行版本中,可能将 apxs 更名为 apxs2。
# tar xvfphp-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/”中。如下图所示。
7. 告知 Apache 将特定的扩展名解析成PHP
例如,让 Apache 将扩展名 .php 解析成 PHP。为了避免潜在的危险,例如上传或者创建类似
exploit.php.jpg 的文件并被当做 PHP 执行,本文不再使用 Apache 的 AddType 指令来设置。参考下面的例子,你可以简单的将需要的扩展名解释为 PHP。我们演示为增加.php。
在httpd.conf中添加如下语句:
或者,你也想将 .php,.php2,.php3,.php4,.php5,.php6,以及
.phtml 文件都当做 PHP 来运行,我们无需额外的设置,仅需按照下面这样来:
8. 按照通常的方式启动 Apache 服务:
# /usr/local/apache2/bin/apachectl start
或者
# service httpd restart
9.
最后测试是否配置成功
在”/usr/local/apache2/htdocs/”文件夹下,新建空白文档,重命名为”test.php”,在文档中加入如下代码并保存:
打开浏览器,输入localhost/test.php,如果看到“我的
PHP 脚本!”,那么恭喜你!你已经成功完成了Apache和php的安装了!!!!
最后说两句:
1. 当然 Apache 和 PHP 都还有很多配置选项,可以在相应的源代码目录中使用 ./configure --help
获得更多信息。
2. 根据我的个人经验,安装过程中如果出现问题,最好官网上去看官方文档,不推荐用百度等搜索引擎去网上搜解决办法,因为你可能会走很多弯路,而且最后不一定能解决问题。如果能静下心来认真的看官方文档,相信80%的错误你都能找到解决方案!