apache httpd下安装php与nginx下安装php

一、apache httpd下安装php与nginx下安装php的区别:

1、apache httpd下php作为apache的一个模块进行安装(php是依附apache的)
2、nginx下php是以php-fpm(fastcgi)这样一个独立的进程进行安装(php进程是独立的,只不过当请求文件是php的话,则将请求转发给php进程处理)

二、php安装时的配置区别:(主要是安装配置的区别)

1、apache httpd下安装php(这里我们只讨论不同的部分,其他相同的配置暂不讨论)
  1. ./configure --with-apxs2=/usr/local/httpd/bin/apxs

指定apache httpd中的apxs这个文件位置(一般在apache安装目录bin下)

2、nginx下安装php
  1. ./configure --enable-fpm

nginx下php是以php-fpm这种进程运行的,所以要开启php-fpm功能

三、apache httpd和nginx如何与php结合(支持php的请求)

1、apache开启php模块:

打开httpd.conf文件:

  • (1)增加AddType,搜索AddType,在 AddType application/x-gzip .gz .tgz这一行下面添加一行:
  1. AddType application/x-httpd-php .php

AddType 是添加apache支持的文件类型

它的用法:AddType MIME类型 扩展名

而php的类型为application/x-httpd-php 它 的扩展名是.php

  • (2)增加索引支持,即当不输入文件名时,自动定位到某个文件:

搜索DirectoryIndex,在DirectoryIndex index.html的后面添加 index.php inex.phtml

(注:index.phtml是支持以.phtml为后缀的文件,一般是伪静态)

2、nginx支持php请求:

将以.php结尾的请求交给php进程处理:

打开nginx.conf文件:去掉location ^(.+.php)$这一区段的注释:

去掉注释: