shell命令的含义和htaccess文件?

问题描述:

#!/bin/sh 
exec /usr/local/cpanel/cgi-sys/php5 

该命令位于名为php.fcgi的文件中。我不知道这是什么意思。shell命令的含义和htaccess文件?

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

上述命令在.htaccess文件中,它们的含义是什么。谢谢。

第一行定义文件将由命令/bin/sh这是Unix shell执行。 下一行,shell命令exec是一个参数,执行它并用该进程替换当前shell(即shell脚本将在该点停止)。

#!/bin/sh 
exec /usr/local/cpanel/cgi-sys/php5 

这意味着它是一个执行PHP5二进制文件的shell脚本包装器。

在.htaccess中的第一行定义了一个名为php-fastcgi为以.php结尾的文件处理程序:

AddHandler php-fastcgi .php 

第二行定义了处理器php-fastcgi可以在位置/cgi-bin/php.fcgi发现:

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

请注意,这不是文件系统的位置,而是URL路径,它由Apache进一步分析以查找实际的文件系统位置(ScriptAliases,别名等)。

所有这一切意味着.php文件与上面的shell脚本一起执行,后者又运行PHP5二进制文件。