PHP有四种常见的运行方式,分别是在服务器端和客户端的运行,以及CLI和CGI。
服务器端运行方式
Apache模块方式
在Apache中,PHP可以作为模块运行。这种方式需要在Apache的httpd.conf配置文件中,加入以下行:
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php
其中LoadModule
用来加载PHP模块,.so
表示插件文件的扩展名,AddType
用来定义PHP文件的MIME类型。
FastCGI方式
FastCGI是一种CGI的实现方式,与普通的CGI相比,可以提升服务器性能。在FastCGI中,PHP以进程池的方式运行。可以在Apache的配置文件中加入以下行实现:
FastCGIExternalServer /path/to/php-fpm -socket /tmp/php-fpm.sock -pass-header Authorization
AddType application/x-httpd-php .php
Action application/x-httpd-php /path/to/php-fpm
其中-socket
指定了FastCGI进程池的通讯sock,-pass-header Authorization
表示在请求中传递Authorization头信息。
客户端运行方式
Command-line interface (CLI)
CLI模式是在终端中以命令行的方式运行PHP代码。常见用法为:
php /path/to/script.php arg1 arg2
其中/path/to/script.php
为需要执行的PHP脚本,arg1
和arg2
为传递给PHP脚本的参数。
CGI方式
CGI是一种通用的Web服务器接口,是连接Web服务器和应用程序的标准。可以在nginx等Web服务器中使用CGI方式运行PHP。在nginx配置文件中加入以下行:
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
以上配置文件表示,将以.php
结尾的请求,指向本地的9000端口,执行PHP脚本。
示例说明
示例一:使用Apache模块方式运行PHP
假定你的Apache安装在/etc/httpd/
下,在httpd.conf
文件中加入以下行:
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php
保存并重启Apache。此时,在/var/www/html/
下创建PHP文件index.php
,写入以下内容:
<?php
phpinfo();
在浏览器中输入http://127.0.0.1/index.php
,则可以看到PHP的详细信息。
示例二:使用CLI方式运行PHP
在终端中输入下面的命令行:
php -r 'echo "Hello, world!\n";'
输出结果为:
Hello, world!
表示已经运行PHP脚本成功。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:php的4种常见运行方式 - Python技术站