2010-05-14 103 views
0

我有一个Python脚本运行在默认的OSX web服务器上,存储在/ Library/WebServer/CGI-Executables中。该脚本使用os.listdir吐出网络驱动器上的文件列表。运行Python CGI时访问网络驱动器的权限?

如果我只是从终端执行此,它工作正常,但是当我尝试通过浏览器访问它(computer.local/cgi-bin目录/ test.py),我得到一个权限错误:

<type 'exceptions.OSError'>: [Errno 13] Permission denied: '/Volumes/code/code/_sendrender/queue/waiting' 

当通过CGI访问网络时,是否允许脚本访问网络?

回答

1

我对默认的osx web服务器知之甚少,但web服务器进程可能以某用户身份运行,该用户需要能够访问这些文件。要找出用户是谁,可以使用ps命令。然后根据网络共享驱动器的配置,您可以将此用户添加到允许访问此数据的用户。

+0

你是对的,它正在执行为_www。但是,我不确定如何授予该用户访问网络驱动器的权限。 – Aaron 2010-05-14 20:31:14

+0

也不确定,用osx标记这个问题可能是一个好主意,因为它似乎与osx相关 – iondiode 2010-05-14 21:19:15