x httpd php source,Apache 服务器 1.x 版本

Unix 下的 Apache 中安装 PHP 的详细资料

你可以根据完整配置选项列表在以下第 10

行中加入你选择的参数。这里把具体版本号略去了以确保本说明的不会出错。你需要把下面的

'xxx' 替换成你得到的文件中确切的数值。例子 3-4.

PHP 的 Apache 共享模块版本安装说明1. gunzip apache_xxx.tar.gz

2. tar -xvf apache_xxx.tar

3. gunzip php-xxx.tar.gz

4. tar -xvf php-xxx.tar

5. cd apache_xxx

6. ./configure --prefix=/www --enable-module=so

7. make

8. make install

9. cd ../php-xxx

10. 现在,配置你的 PHP。这是你定制 PHP 的不同选项的时候,例如要

加载哪些扩展库。使用

./configure --help

来列出可用的选项。在下面的示例中我们只是简单地配置 Apache 1

和 MySQL 支持。你的 apxs 的路径可能和此示例中的不同。

./configure --with-mysql --with-apxs=/www/bin/apxs

11. make

12. make install

如果在安装之后你决定修改配置选项,那么只需重复以上最后三步。

只须重新启动 Apache 就可以使新模块生效。不需要重新编译 Apache。

注意除非特别指出,'make install' 总是会安装 PEAR,各种 PHP

工具例如 phpize,安装 PHP CLI 以及其它。

13. 建立你的 php.ini 文件。

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

你可以编辑 php.ini 来设置 PHP 选项。如果你想把 php.ini 放在

其它目录,在第 10 步加上以下选项:

--with-config-file-path=/path

如果你选择了 php.ini-recommended,确保阅读一下其中的变更说明,

因为这些会影响到 PHP 的行为。

14. 编辑你的 httpd.conf 来加载 PHP 模块。在 LoadModule 语句右边的

路径必须指向你系统中 PHP 模块所在的路径。上面的 make install

步骤可能已经添加了,但还是检查确认一下。

对 PHP 4:

LoadModule php4_module libexec/libphp4.so

对 PHP 5:

LoadModule php5_module libexec/libphp5.so

15. 在 httpd.conf 中加入 AddModule 部分,在 ClearModuleList 下面的

某处,加上这一句:

对 PHP 4:

AddModule mod_php4.c

对 PHP 5:

AddModule mod_php5.c

16. 告诉 Apache 将哪些后缀作为 PHP 解析。例如,让 Apache 把 .php

后缀的文件解析为 PHP。可以将任何后缀的文件解析为 PHP,只要在

以下语句中加入并用空格分开。我们添加一个 .phtml 来示例。

AddType application/x-httpd-php .php .phtml

为了将 .phps 作为 PHP 的源文件进行语法高亮显示,还可以加上:

AddType application/x-httpd-php-source .phps

17. 用你通常的过程启动 Apache。(你必须完全停止 Apache 再重新启动,

而不是用 HUP 或者 USR1 信号使 Apache 重新加载。)

根据你的 Unix 系统和 Apache 安装方法的不同,有很多方法停止和重启动

Apache。以下是一些不同的 Apache/Unix 下重启动 Apache

的典型命令。你需要把 /path/to/ 替换成你系统上的确切路径。

例子 3-5. 重启动 Apache 的示例命令1. 在一些 Linux 和 SysV 的变种下:

/etc/rc.d/init.d/httpd restart

2. 使用 apachectl 脚本:

/path/to/apachectl stop

/path/to/apachectl start

3. httpdctl 和 httpsdctl(使用了 OpenSSL),类似 apachectl:

/path/to/httpsdctl stop

/path/to/httpsdctl start

4. 使用了 mod_ssl,或其他 SSL 服务器,你可能需要手工重启动:

/path/to/apachectl stop

/path/to/apachectl startssl

apachectl 和 http(s)dctl 程序所在的路径在不同系统中通常不一样。如果你的系统中有

locate 或者 whereis 或者

which 命令,那么可以帮你找到这些控制程序。

编译 PHP 和 Apache 的不同例子还有:

./configure --with-apxs --with-pgsql

这个配置将生成在 Apache 的 httpd.conf 文件中用 LoadModule 加载的

libphp4.so 共享库。而 PostgreSQL 支持将嵌入到

libphp4.so 库中。

./configure --with-apxs --with-pgsql=shared

这个配置将生成 Apache 的 libphp4.so 共享库,并且还生成

pgsql.so 共享库,可以在 php.ini 文件中用

extension 指令加载,或者在 PHP 脚本中用 dl() 函数明确地加载。

./configure --with-apache=/path/to/apache_source --with-pgsql

这个配置将生成 libmodphp4.a 库,mod_php4.c

和一些相关的文件并且拷贝到 Apache 源程序目录中的 src/modules/php4

目录下。然后用 --activate-module=src/modules/php4/libphp4.a

编译 Apache,Apache 编译系统会生成 libphp4.a

并且将其静态地连接到 httpd 程序中。PostgreSQL

支持也直接包括在这个 httpd

程序中了,因此最终结果是单一的一个包括了所有 Apache 和 PHP 支持的

httpd 可执行文件。

./configure --with-apache=/path/to/apache_source --with-pgsql=shared

这个配置和上面一样 - 除了没有在最后的 httpd

可执行文件中包括 PostgreSQL 的支持以及生成了一个 pgsql.so

共享库以外。该共享库可以在 php.ini 文件中或者用 dl() 函数加载。

当选择不同的方法编译 PHP 时,需要考虑每种方法的优势和缺点。用共享对象方式编译

PHP 意味着可以单独编译 Apache,并且不用在添加或修改了 PHP

的时候重新编译所有程序。用内置方法编译 PHP(静态方式)意味着

PHP 可以加载和运行得更快。更多信息见 Apache 的

DSO 支持页面。

注:

Apache 默认的 httpd.conf 文件中目前包括类似如下的内容:

User nobody

Group "#-1"

除非你把它修改成“Group nogroup”或者其它类似的(“Group daemon”也很通用),PHP

将不能打开文件。

注:

确认在使用 --with-apxs=/path/to/apxs 时指向 Apache 安装后的目录中的

apxs。绝对不能用 Apache 源程序中的 apxs 而要用安装后的 apxs。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值