#!/bin/sh
exec /usr/local/cpanel/cgi-sys/php5
此命令位于名为php.fcgi
的文件中。我不知道这是什么意思。
AddHandler php-fastcgi .php
Action php-fastcgi /cgi-bin/php.fcgi
.htaccess
文件中的上述命令,它们的含义是什么。谢谢。
答案 0 :(得分:1)
第一行定义该文件由命令/bin/sh
执行,该命令是Unix shell。
下一行,shell命令exec
是一个参数,执行它并用该进程替换当前的shell(即shell脚本将在该点停止)。
#!/bin/sh
exec /usr/local/cpanel/cgi-sys/php5
这意味着它是一个执行PHP5二进制文件的shell脚本包装器。
在.htaccess中,第一行为所有以.php结尾的文件定义名为php-fastcgi
的处理程序:
AddHandler php-fastcgi .php
第二行定义可以在php-fastcgi
位置找到处理程序/cgi-bin/php.fcgi
:
Action php-fastcgi /cgi-bin/php.fcgi
请注意,这不是文件系统位置,而是URL路径,Apache进一步解析该路径以查找实际的文件系统位置(ScriptAliases,Aliases等)。
所有这一切意味着.php
文件是使用上面的shell脚本执行的,而shell脚本又运行PHP5二进制文件。