在python中使用导入的模块会导致权限被拒绝

2024-09-29 23:16:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在python脚本中使用导入的模块(pylightning),该脚本在用户www数据下使用apache运行。

脚本在通过apache作为用户www数据运行时会出现权限错误:

File "/usr/local/lib/python3.4/dist-packages/lightning/lightning.py", line 69, in call
sock.connect(self.socket_path)
PermissionError: [Errno 13] Permission denied

为了解决这个问题,我已经进行了深入的搜索,发现需要将模块重新安装为www数据用户:

^{pr2}$

脚本仍然作为常规用户从CLI顺利运行:

^{pr3}$

但是从apache(通过浏览器或从命令行获得用户www数据)仍然会给出相同的错误:

^{pr4}$

有人知道这里吗?

脚本源:

#!/usr/bin/env python3

import hashlib
from lightning.lightning import LightningRpc

rpc_interface = LightningRpc("/home/pi/.lightning/lightning-rpc")
print ("Content-Type: text/html\n\n");
print ("</body></html>asd");
print(rpc_interface.listpeers())

此行上的错误触发器: 打印(rpc_interface.listpeers())


Tags: 模块数据用户import脚本usrapachehtml

热门问题