【问题标题】:Execut bash script in PHP在 PHP 中执行 bash 脚本
【发布时间】:2013-05-28 10:59:40
【问题描述】:

我需要通过位于/var/www/ 文件夹中的PHP 文件执行一个bash 脚本,该脚本主要包含一个pg_dump 和一些日志、清理等内容

我的服务器是Debian Squeeze 6.0.6,最近安装了PHP5Apache2

我的index.php 文件夹包含以下代码:

<?php
echo shell_exec('./backup_database');
?>

该脚本似乎可以工作,因为我在浏览器中获得了日志输出,但 pg_dump 未执行。

显然,如果我手动运行脚本,它就可以工作。

该脚本与 index.php 位于同一文件夹中,我在这两个文件和父目录上使用了 chmod 777。

附:我对服务器配置知之甚少,尽量具体一点

【问题讨论】:

    标签: php bash postgresql debian shell-exec


    【解决方案1】:

    试试

    <?php
     exec('./backup_database');
    ?>
    

    但我认为您的 backup_database 需要一个 .sh 结尾才能执行。那么它应该是这样的

    <?php
     exec('sh ./backup_database.sh');
    ?>
    

    或者

    <?php
     exec('./backup_database.sh');
    ?>
    

    我不太确定这两种解决方案中的哪一种可能适合您

    【讨论】:

    • 两个第一个做任何事情,但是第三个打印最后一个日志(pg_dump 仍然没有执行:() 可能是配置有问题?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-22
    • 1970-01-01
    • 2013-07-13
    • 1970-01-01
    相关资源
    最近更新 更多