首頁  >  文章  >  後端開發  >  Apache下php的幾種工作方式

Apache下php的幾種工作方式

伊谢尔伦
伊谢尔伦原創
2016-11-25 13:55:241024瀏覽

一、CGI模式

PHP 在 Apache 2中的 CGI模式。編輯Apache 設定檔httpd.conf 如下:

# PHP4 版寫法
ScriptAlias /php/ "D:/php/"
AddType application/x-httpd-php  .php
Action application/x-httpd-php /php.exe"
# PHP5 版寫法
ScriptAlias /php/ "D:/php/"
AddType application/x-httpd-php  .php
Action application/x-httpd-php  "/php/php-cgi. exe"

二、Apache模組模式

PHP 在Apache 2中的 模組模式。編輯Apache 設定檔httpd.conf 如下:

# PHP4 版寫法
LoadModule php4_module  "D:/php/php4apache2.dll"
AddType application/x-httpd-php .php .dll 拷貝出來!
# PHP5 版寫法
LoadModule php5_module  "D:/php/php5apache2.dll"
AddType application/x-httpd-php .php
PHPIniDir "D:/php"php設定檔#Iphp設定檔#Iphp設定檔#diphp配置檔案#.的路徑

三、FastCGI模式

Apache下的FastCGI模組目前網路上有兩個版本mod_fastcgi 和mod_fcgid。 推薦用 mod_fcgid。

使用 mod_fcgid 設定fastCGI模式

下載的 mod_fcgid,將壓縮套件中的「mod_fcgid.so」檔案複製到apache的「modules」目錄。開啟Apache的httpd.conf 文件,最後加入如下設定:

LoadModule fcgid_module modules/mod_fcgid.so
<IfModule mod_fcgid.c>
    AddHandler fcgid-script .fcgi .php
    #php.ini的存放目录
    FcgidInitialEnv PHPRC "D:/PHP"
    # 设置PHP_FCGI_MAX_REQUESTS大于或等于FcgidMaxRequestsPerProcess,防止php-cgi进程在处理完所有请求前退出
    FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 1000
    #php-cgi每个进程的最大请求数
    FcgidMaxRequestsPerProcess 1000
    #php-cgi最大的进程数
    FcgidMaxProcesses 5
    #最大执行时间
    FcgidIOTimeout 120
    FcgidIdleTimeout 120
    #php-cgi的路径
    FcgidWrapper "D:/PHP/php-cgi.exe" .php
    AddType application/x-httpd-php .php
</IfModule>

修改DocumentRoot 路徑的設定為:

<Directory "D:/WWW">  
    Options Indexes FollowSymLinks ExecCGI    Order allow,deny  
    Allow from all
    AllowOverride All
</Directory>

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn