【问题标题】:Accessing bin directory through nginx/fpm - php通过 nginx/fpm - php 访问 bin 目录
【发布时间】:2018-01-22 13:30:33
【问题描述】:

我一直在使用一个名为 Unoconv 的库。 (请注意,在我本地的 ubuntu [virtualbox-homestead] 中,它按预期工作,但在 AWS 中却没有。)

$unoconv = Unoconv::create([
    'unoconv.binaries' => '/usr/bin/unoconv',
]);

这就是我在 php.ini 中所说的。我可以确认/usr/bin/unoconv 存在。

最初的错误是:

异常:“Unoconv\Exception\RuntimeException” 文件:“/usr/bin/unoconv”


首先,我认为这是权限问题。所以我做了相应的调整:

My Homestead permissions: -rwxr-xr-x 1 root root 63243 Aug 18 2015 unoconv

My AWS permissions: -rwxr-xr-x 1 root root 63243 Aug 18 2015 unoconv

然后我将我的 AWS 组更改为:

-rwxr-xr-x 1 www-data www-data 63243 Aug 18 2015 /usr/bin/unoconv


然后我尝试编辑/etc/nginx/fastcgi_params 并添加了这一行:

// This existed, so I didn't touch it
fastcgi_param REDIRECT_STATUS 200;

// I added this line
fastcgi_param PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/node/bin

我的 nginx 看起来像这样:

    location ~ \.php$ {
            try_files $uri =404;
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
            fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include fastcgi_params;
    }

错误现在已更改为:

异常:“Unoconv\Exception\RuntimeException” 文件:“/var/www/my_proj/vendor/php-unoconv/php-unoconv/src/Unoconv/Unoconv.php” 线路:68 消息:“Unoconv 无法转码文件”

文件路径改变了。


最后,我尝试删除 fastcgi_param REDIRECT_STATUS 200;,但 nginx 不编译/抛出语法错误。

我不知道如何解决这个问题。


更新:

/etc/init.d/php7.0-fpm 中,我可以看到PATH=/sbin:/usr/sbin:/bin:/usr/bin,但我不确定如何解决此问题。我应该使用/bin 而不是/usr/bin 吗?如果这样做,我会收到错误“找不到可执行文件,建议:/bin/unoconv”

还是权限问题?

【问题讨论】:

    标签: amazon-web-services ubuntu nginx fastcgi fpm


    【解决方案1】:

    尝试使用使二进制可执行文件 sudo chmod +x /path/to/unoconv

    另外,'which unoconv' 命令将帮助您找出 unoconv bin 库的确切路径。

    这里也是您类似问题帖子的链接参考: https://github.com/alchemy-fr/PHP-Unoconv/issues/5

    【讨论】:

    • 问题显然是给/var/www/a www-data 组,以便它可以创建必要的文档。因为 OpenLibrary 试图在那里创建一些临时文件。感谢您的输入
    猜你喜欢
    • 1970-01-01
    • 2021-11-18
    • 2015-01-13
    • 2016-09-29
    • 1970-01-01
    • 1970-01-01
    • 2014-06-16
    • 2019-04-01
    • 2017-09-27
    相关资源
    最近更新 更多