centos的Apache+FastCgi+php

 

1.获取Apache源码包并且编译安装,官网获取的版本是httpd-2.2.29,默认安装在/usr/local/apache2中

   步骤1:配置:./configure --enable-so --enable-rewrite --prefix=/usr/local/apache2

               其中 --enable-so 选项是:让 Apache 可以支持DSO模式,也就是能够动态加载模块

  步骤2:make

  步骤3:make install

 

  3个步骤之后Apache安装成功,具体的Apache的文件结构和配置文件,可参看该链接:http://www.it165.net/os/html/201311/6623.html

  源码安装的Apache启动、停止、重启的命令是执行/bin/apachectl脚本,如下:

  开启:/usr/local/apache2/bin/apachectl -k start

  重启:/usr/local/apache2/bin/apachectl -k reload

  停止:/usr/local/apache2/bin/apachectl -k stop

  查看Apache已经安装的模块:/usr/local/apache2/bin/apachectl -t -D DUMP_MODULES

 

2.安装php,我的版本是php5.3.3

   步骤1:配置:./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --enable-fpm --with-mysql -- with-pdo-mysql --enable-opcache

   其中--with-apxs2=/usr/local/apache2/bin/apxs 选项表示安装php是使用cli模式,也就是命令模式,来安装;

    --enable-fpm选项是允许使用php的fpm

   步骤2:make

   步骤3:make install

   步骤4:复制新的配置文件到刚刚使用“--with-config-file-path”选项配置的php配置文件目录中去

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

 

   php常用命令:

         查看php配置文件是否配置无误:/usr/local/php/bin/php -v

         查看php配置情况等价于phpinfo:/usr/local/php/bin/php -i

         查看php已安装的模块:/usr/local/php/bin/php -m

         使用php环境:/usr/local/php/bin/php -a

 

 

3.安装Apache的fastcgi模块:mod_fastcgi-2.4.6版本

  步骤1:进入目录中,然后cp Makefile.AP2 Makefile

  步骤2:vim Makefile   将Makefile中的路径改成你的Apache的安装路径,以便安装时候自动将mod_fastcgi.so复制到Apache的安装目录下的modules目录下

  步骤3:make

  步骤4:make install

 

4.配置Apache的配置文件httpd.conf,让php使用fastcgi来允许,在配置文件中加入以下代码:

LoadModule fastcgi_module modules/mod_fastcgi.so

 

<IfModule fastcgi_module>

    ScriptAlias /fcgi-bin/ /usr/local/php/bin/

    AddType application/x-httpd-php .php

    AddHandler php-fastcgi .php

    Action php-fastcgi /fcgi-bin/php-cgi

    FastCgiExternalServer /usr/local/php/bin/php-cgi -host 127.0.0.1:9000

</IfModule>

 

<Directory "/usr/local/php/bin/">

    Options None

    Order allow,deny

    Allow from all

 

</Directory>

 

AddType application/x-httpd-php .php

 

5. 开启、重启、停止php-fpm:(也就是通过php-fpm来开启重启停止php,加载php.ini的操作)

    以上安装后php-fpm执行文件是在php安装目录下的/sbin/php-fpm,只要执行该文件即可开启php-fpm: /usr/local/php/sbin/php-fpm

 

   由于php5.3.3版本后的php-fpm不再支持旧的 /usr/local/php/sbin/php-fpm (start|stop|reload)等命令,需要使用信号控制:

   SIGINT, SIGTERM 立刻终止  

   SIGQUIT 平滑终止  

   SIGUSR1 重新打开日志文件  

   SIGUSR2 平滑重载所有worker进程并重新载入配置和二进制模块

 

   示例:  

    php-fpm 关闭:   kill -SIGINT  `cat /usr/local/php/var/run/php-fpm.pid`

    php-fpm 重启:   kill -SIGUSR2  `cat /usr/local/php/var/run/php-fpm.pid`

   

    注意:/usr/local/php/var/run/php-fpm.pid这个进程文件路径,是php-fpm配置文件(/usr/local/php/etc/php-fpm.conf)中配置的进程路径,配置文件的该处配置详情如下:

    
centos的Apache+FastCgi+php

 

最后可通过命令:ps aux | grep php-fpm 查看php-fpm的进程id是否变化来确定是否重启或关不


 

  

 

 

你可能感兴趣的:(apache)