2012-03-12 98 views
2

我似乎無法打開,寫從我的CGI腳本的文本文件。我不斷收到權限錯誤(這是我從CGITb看到)Python的CGI權限錯誤

每當我試着這樣做:

f = open("/Users/varatis/Documents/data.txt","a+") 

我得到這個:

<type 'exceptions.IOError'>: [Errno 13] Permission denied: '/Users/varatis/Documents/data.txt' 
    args = (13, 'Permission denied') 
    errno = 13 
    filename = '/Users/varatis/Documents/data.txt' 
    message = '' 
    strerror = 'Permission denied' 

理想情況下,我要創建的文本文件。但是,爲了使事情服務器更容易,我試着讓事情通過使預製的data.txt容易,運行常用的:

chmod a+x data.txt 
chmod a+w data.txt 
chown 70 data.txt  (70 is the uid the server runs on, obtained by os.getuid from the os module) 

然而,這些甚至不似乎工作。有沒有人有這方面的經驗,可以幫助我?同樣,理想情況下,我將追加到來自CGI腳本的文本文件,並在不存在的情況下創建它。

而且,也許使用的將是香格里拉的data.txt中的LS:

[email protected] 1 _www staff 0 Mar 12 16:18 data.txt 

回答

0

很可能你的網絡服務器沒有權限寫入到該指定的目錄。 如果它是一個Apache,那麼你可能想要擺弄'Directory'指令。

更新: Documents目錄的權限是什麼?

+0

HTTPd指令隻影響HTTPd。 CGI腳本是獨立的進程。 – 2012-03-12 21:17:57

+0

好點Ignacio - 謝謝 – 2012-03-13 21:25:36