Pureftpd PureFTP:纯上传脚本不工作

Pureftpd PureFTP:纯上传脚本不工作,pureftpd,Pureftpd,我有一台装有PureFTP的Debian挤压机。 PureFTP有一个名为Upload Script的子工具。可以将此工具配置为在通过FTP完成上载后调用。但是,我找不到一种方法来运行这个脚本 我希望PureFTP在每次上传后执行一个PHP脚本。 我将PureFTP配置如下: 为了启用UploadScript功能,我在/etc/pure-ftpd/conf中有一个名为CallUploadScript的文件,内容为“yes” 在/etc/default/pure-ftpd-common中,我进行

我有一台装有PureFTP的Debian挤压机。
PureFTP有一个名为Upload Script的子工具。可以将此工具配置为在通过FTP完成上载后调用。但是,我找不到一种方法来运行这个脚本

我希望PureFTP在每次上传后执行一个PHP脚本。
我将PureFTP配置如下:

  • 为了启用UploadScript功能,我在/etc/pure-ftpd/conf中有一个名为CallUploadScript的文件,内容为“yes
  • 在/etc/default/pure-ftpd-common中,我进行了以下设置:
    • UPLOADUIDUPLOADGID我尝试将其设置为root和ftpuser的UID/GID-两者都不起作用
    • 设置每次上载后要调用的上载脚本的路径
当我使用/etc/init.d/pure-ftpd restart重新启动ftp服务器时,输出如下:

Restarting ftp server: Running: /usr/sbin/pure-ftpd -l puredb:/etc/pure-ftpd/pureftpd.pdb -l pam -E -8 UTF-8 -O clf:/var/log/pure-ftpd/transfer.log -P *IP-REMOVED-FOR-PRIVACY* -A -Y 2 -o -u 1000 -p *PORT-RANGE-REMOVED-FOR-PRIVACY* -c 60 -d -X -B
Restarting ftp upload handler: pure-uploadscript.
所以PureFTP是用整个上传脚本编译的

以下是我已经尝试过的几个步骤/事项:

  • 我想可能是因为PHP,它不能工作。所以我 定义了一个Shell脚本,用于将测试输出到中的文件 /tmp文件夹。但上传后什么也没发生——脚本没有执行

  • 最初,要调用的脚本位于/opt/uploadscript/script.php中
    所以我想,如果我把脚本放在ftpuser上传东西的同一个webfolder中,它可能会工作(可能是因为一些chroot限制)。因此,我将uploadscript文件夹放入/var/www/vhost/domain.com/httpdocs/中,这是ftp用户的主目录。但是,上传后仍然没有任何结果

  • 为了确保它不是我的php脚本中的错误,我用一个testscript替换了原来的php脚本,该脚本只输出一个用touch()创建的测试文件,文件名为当前日期。执行相同操作的shell脚本也不起作用。从命令行直接调用的两个脚本都可以完美地工作


你有什么建议吗?我还可以尝试什么,或者我甚至错过了一些重要的东西吗?

我已经通过手动启动纯上传脚本实现了。Debian使用标准的apt get安装进行压缩

文档非常详细地说明了执行顺序(但您似乎有这个权利): “必须先启动PURE-FTPD,然后再启动PURE-UPLOADSCRIPT。 相反的顺序行不通。”

我有uid:1004和gid:1005,然后像这样启动上载脚本(在纯ftp服务器运行之后):

纯上传脚本-u 1004-g 1005-B-r testToSyslog.sh

但是,在开始使用上载脚本之后,我遇到了另一个问题-似乎在使用上载脚本时,/etc/init.d脚本没有正确生成PID存在问题。我还没有找到根本原因。但迹象如下:


我实际上是以相反的顺序启动我的,否则它就不工作了,纯ftpd只是挂起,直到启动authd。