Linux系统上把PHP编译进Apache静态内核

2016-01-29 17:34 7 1 收藏

Linux系统上把PHP编译进Apache静态内核,Linux系统上把PHP编译进Apache静态内核

【 tulaoshi.com - Linux 】

说明:Apache整合PHP有两种方式:一种是DSO模式,把PHP当作Apache的外部模块来调用,这样增加了Apache的灵活性,但会带来5%的性能降低;另一种方式是把PHP编译进Apache的内核,这样牺牲了以后调整的灵活性(每次对PHP的重新编译,都需要再次编译Apache),但性能会高一些。对Perl也是如此。相比之下,本人更愿意使用第二种方式,即把PHP编译进Apache的静态内核。

一.编译Apache:

1. 进入Apache展开目录;

2. ./configure - -prefix=/usr/local/apache1.3 - -disable-module=all

- -enable-module=access - -enable-module=log_config

- -enable-module=dir - -enable-module=mime ##Apache工作的基本模块

(说明:如果以后使用DSO方式,则编译时加上 - -enable-mdule=so)

二.安装PHP:

1. 进入PHP展开目录;

2. ./configure - -prefix=/usr/local/php4

- -with-apache=../apache_1.3.27 ##这里指定Apache的源代码目录

3. make;make install

三.安装Apache:

1. 进入Apache展开目录;

2. ./configure - -prefix=/usr/local/apache1.3 - -disable-module=all

- -enable-module=access - -enable-module=log_config

- -enable-module=dir - -enable-module=mime

- -activate-module=src/modules/php4/libphp4.a ##把PHP模块编译进去

3. make;make install

四。配置Apache:

修改httpd.conf文档:

1.Timeout 300---Timeout 120

2.MaxKeepAliveRequests 100

3.KeepAliveTimeout 5

4.ServerSignature on---ServerSignature off

5.Options Indexes FollowSymLinks 行把indexes删掉(目录的Options不要带index选项)

6.将Apache运行的用户和组改为nobody

7.MaxClients 150——MaxClients 1500

(该参数是多少有一个基本的算法,例如2G的机器,一个Apache+PHP进程大概消耗4M内存,则最高效率的进程数为2g/4m * 2=1000,最大进程数为1000*1.5=1500;1.3下要调整到高于256须在编译Apache前修改其源代码)

(对apache2.0版本,将worker MPM字段里的MaxClients 150——MaxClients 1500)

8.DirectoryIndex index.html index.html.var 后面加上index.php

9.查找包含大量AddType命令的小节,添加下面这一行: AddType application/x-httpd-php .php

Apache版本:Apache-2.0.47

PHP版本:PHP-4.3.2

a.安装Apache:

进入Apache安装目录;

./configure - -prefix=/usr/local/apache2 - -enable-so

make;make install

b.安装PHP:

进入PHP安装目录;

./configure - -prefix=/usr/local/php4 -

-with-apxs2=/usr/local/apache2/bin/apxs

make;make install

c.配置Apache:

修改httpd.conf,上述配置工作照做;

另外修改的地方:

LoadModule php4_module modules/libphp4.so (这一项在装完php后会自动添加)

AddType application/x-httpd-php .php (这一项手工添加)

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/linux/)

来源:http://www.tulaoshi.com/n/20160129/1501984.html

延伸阅读
标签: Web开发
look:PHP 经常和Apache Web服务器一道用于Linux/Unix平台。当我们在Apache环境下安装PHP的时候,你有三种安装模式可供选择:静态模块、动态模块(DSO)和CGI。 我建议你最好把PHP安装为Apached的DSO ,这种安装模式的维护和升级都相当简单。比方说,假设你原先只安装了PHP的数据库支持功能。可过了几天之后你又决定要为PHP添加加密功能。很...
第一步:在任何一个子目录下 untar 解开新的内核源程序。 tar xvfz linux-x.x.xx 第二步:rm /usr/src/linux 这通常是一个符号连接。 第三步:在 /usr/src/ 下建立一个符号连接到你的新内核目录。 ln -s xxx/yyy/xxx/linux.x.x.xx /usr/src/linux 第四步:将当前目录...
Chromium编译说明(Linux版) 此页描述如果在Linux操作系统上编译构建Chromium浏览器。假如你对测试chromium或想移植chromium到别的平台请你继续阅读。 小提示: 目前还没有在Linux运行的Chromium浏览器,虽然Chromium的部分子模块在linux编译过和一小部分的单位测试通过过,所有的那些也只是一条命令all tests pass"执...
标签: PHP
  刚刚看到有人贴win下安装步骤 刚好今天公司网站的新服务器到手。花了一上午安装mysql+php+apache。 新版的老版的还是有些不同的。现在把步骤帖一下 安装步骤: 1.mysql 在如下页面下载mysql的for linux rpm包 http://www.mysql.com/downloads/down...3.52-1.i386.rpm http://www.mysql....
  内核重编译对很多Linux爱好者来说是一个不小的挑战。笔者认为,很多Linux用户对内核通常有一种误解,他们认为普通用户是不能调整内核的。其实,就实际情况而言,这种认识是不全面的。应该说,内核重编译是具有一定深度和复杂性的,同时也是易失败的配置工作。 如果大家留意那些比较权威的Linux参考工具书的话,就会发现很多原版书籍...

经验教程

579

收藏

92
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部