2014-03-25 46 views
0

當前文件夾結構如下的Perl CGI寫入文件到同級目錄

/main/site/script.cgi

我希望能夠在

寫入文件

主/ logs/mylog.log

如何在不給絕對路徑的情況下做到這一點?因爲這可以部署到不同的服務器,我不希望每次部署時都要更改它。

回答

0

要使用相對路徑訪問的目錄,你需要首先要建立這條道路將是相對什麼。這意味着你需要找出當前的工作目錄是用來運行CGI腳本的。

如果您將此程序添加到您的服務器並在瀏覽器中調用它,您將看到該服務器適用於其所有CGI程序的當前工作目錄。

use strict; 
use warnings; 

use CGI ':standard'; 
use Cwd 'getcwd'; 

print header('text/plain'); 

printf "Current working directory: %s\n", getcwd; 

如果,例如,你會發現當前的工作目錄是/main/site那麼你可以使用路徑../logs/mylog.log創建文件。

+0

工作感謝! – dubdub