情形四:PHP 解釋器放在 web 目錄以外

一個(gè)非常安全的做法就是把 PHP 解釋器放在 web 目錄外的地方,比如說(shuō) /usr/local/bin。這樣做唯一不便的地方就是必須在每一個(gè)包含 PHP 代碼的文件的第一行加入如下語(yǔ)句:

#!/usr/local/bin/php
還要將這些文件的屬性改成可執(zhí)行。也就是說(shuō),要像處理用 Perl 或 sh 或其它任何腳本語(yǔ)言寫(xiě)的 CGI 腳本一樣,使用以 #! 開(kāi)頭的 shell-escape 機(jī)制來(lái)啟動(dòng)它們。

要使 PHP 能使用此設(shè)置正確處理 PATH_INFOPATH_TRANSLATED 信息,需要開(kāi)啟 cgi.discard_path ini 指令。