【问题标题】:Can't create folder using mkdir in perl, permission denied?无法在 perl 中使用 mkdir 创建文件夹,权限被拒绝?
【发布时间】:2011-09-16 15:43:18
【问题描述】:

在通过 Web 界面通过 Ajax 调用它后,我正在尝试使用 perl 脚本创建一个目录。我正在使用 IIS7.5 运行我的网络服务器。

当我使用mkdir($path)system("mkdir", $path) 时出现问题,错误分别为“权限被拒绝”或“访问被拒绝”。我相信我已经正确设置了权限以授予读/写/执行权限以及为脚本创建文件和文件夹的特殊权限。

如果这应该张贴在别处,请告诉我,谢谢!

【问题讨论】:

  • 运行脚本的用户没有创建目录的权限。授予它必要的权限或配置您的网络服务器以使用其他用户。
  • 如何找出运行脚本的用户,或配置我的 Web 服务器以使用不同的用户? (是的,我尝试过在线搜索,但我似乎一直遇到同样的事情,这假设我知道如何做上述两件事。:()
  • 找出运行脚本的用户:print scalar getpwuid($<), "\n".

标签: perl iis permissions iis-7.5 mkdir


【解决方案1】:

我认为您可以找到使用“whoami”运行脚本的用户。

另外,我不清楚脚本在什么上下文中运行,也不清楚它试图创建的目录在哪里。可能需要添加“-p”选项,以便创建必要的父目录。

对此的安全性不予置评...我认为这些检查正在其他地方进行。

【讨论】:

  • 使用whoami,发现用户是nt authority\iusr。当我尝试将此用户添加到脚本的权限时,我收到“未找到名称”。有什么想法吗?
【解决方案2】:

请记住,您计划在其中创建此新文件夹的文件夹必须归 apache(或您可能正在使用的任何其他 Web 服务器软件)所有。

sudo chown apache *rootfolderfornewfolder*

希望对你有帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-15
    • 1970-01-01
    • 1970-01-01
    • 2011-10-01
    • 2021-12-11
    • 2016-08-24
    • 2013-07-01
    相关资源
    最近更新 更多