PHP exec() 通过浏览器执行时不会执行 shell 命令

2023-12-06

我有一个 PHP 脚本,它调用 exec() 来执行将 PDF 转换为 JPG 的命令。该命令在 bash 中运行良好。

为了抢占您最初的故障排除猜测,请注意以下事项:

  • 安全模式=关闭
  • 包含 PDF 和脚本的目录的权限设置为 777,该目录也是写入 JPG 的位置。
  • 我传递给 exec() 的命令明确指向正在使用的二进制文件(例如 /usr/local/bin/convert)。
  • 显示错误=开
  • 错误报告=E_ALL
  • 禁用功能 = [空白]
  • 我正在回显 exec() 的输出,但它什么也没返回。默认情况下运行的命令不返回任何内容。

当我从浏览器调用这个 PHP 脚本时(访问http://www.example.com/script.php),exec() 不执行它的参数。

重要的:我知道我的脚本或构建 bash 命令的方式没有问题,因为在 bash 中,我可以使用“php”执行脚本并且它可以工作(例如“php script.php”转换文件)

我也尝试过用 system() 替换 exec() 。

最后,我过去曾经遇到过这个问题,但不记得我是如何解决它的。

我知道我遗漏了一些东西,所以我希望其他人也像我一样经历过这种情况并记住如何解决它!

预先感谢您提供的任何帮助。

Alex


Add 2>&1到命令末尾,将错误从 stderr 重定向到 stdout。这应该可以清楚地说明出了什么问题。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP exec() 通过浏览器执行时不会执行 shell 命令 的相关文章

  • 如何在php中关闭夏令时

    我有这行代码将夏令时设置为 打开 将其设置为 关闭 的正确方法是什么 is daylight saving On rcmail config dst active bool date I date I 这是一个大写字母 i 当当前默认时区
  • 在 Windows 上查看 PHP 文件夹

    我正在编写一个简单的 PHP 脚本来监视文件夹及其子文件夹的任何更改 新文件 修改 删除 然后执行操作 我将使用 Windows 上的命令行运行此脚本php f script php 我一直在寻找一种在 Windows 上观看具有 PHP
  • PHPunit - 错误

    当 PHPunit 框架不希望发生的错误发生时 测试会停止 PHP 会抛出错误 但 PHPunit 不会记录这是一个错误 我如何确保 PHPunit 将其记录为错误 免责声明 我是 PHPUnit 的新手 我也试图弄清楚 发生错误时会发生什
  • 如何检查号码是否是巴基斯坦用户的手机号码而不是固定电话号码

    我所做的是从开头删除 92 或 0092 并使用以下代码检查它是否是巴基斯坦人的有效手机号码 if preg match 3 0 4 0 9 number 1 Pakistani mobile number else not a pakis
  • Laravel 5.1 中的VerifyCsrfToken.php 第 53 行:(Firefox 浏览器)中出现 TokenMismatchException?

    我试图找出为什么会出现这个错误 即使它是全新安装的 我在我的项目中遇到了这个错误 所以我用谷歌搜索 没有一个答案对我有用 所以我创建了新项目并复制了所有控制器 视图和模型 几个小时后工作正常 再次出现令牌不匹配错误 为什么在 laravel
  • UML 图 - 在我的应用程序中发送电子邮件被视为外部系统

    我的应用程序有一个联系选项 它将打开带有按摩页面的电子邮件应用程序 并且消息接收者设置为应用程序支持电子邮件 我已附上我的意思的图片 我已将其编写为需求 但不确定如何在系统类图和用例图中说明它 我最初在用例图中所做的是 将我的用户 主要参与
  • PHP解析xml文件错误

    我正在尝试使用 simpleXML 来获取数据http rates fxcm com RatesXML http rates fxcm com RatesXML Using simplexml load file 我有时会遇到错误 因为这个
  • 关于加拿大短信网关提供商的建议[关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我很好奇 如果我能够接受传入的短信到某个号码 然后将其传递给 PHP 中的服务器端应用程序 会带来多少麻烦 金钱 我最终会通过电子邮件地址发回短信 有
  • 重复使用相同的卷曲手柄。性能大幅提升?

    在 PHP 脚本中 我对不同的 URL 执行了许多不同的curl GET 请求 一百个 将重复使用来自curl init提高性能 还是与请求的响应时间相比可以忽略不计 我这么问是因为在当前的架构中保持相同的句柄并不容易 交叉发布自我应该关闭
  • 使用 php 更改白天和黑夜的背景?

    我正在制作一个 tumblr 页面 我的 html 页面有两种不同的背景 我希望白天背景从早上 7 点到晚上 8 点显示 夜间背景从晚上 8 点到早上 7 点显示 我决定用 php 来做这件事 但对于 php 来说我是个新手 我的朋友给我发
  • 如何从导出的 csv 文件中删除双引号

    我正在使用 Laravel 5 8 并且添加了 Maatwebsite 包 用于从数据库表导出 CSV 文件 这是我导出的类 class ConfirmedExport implements FromCollection WithHeadi
  • php - 我应该加密电子邮件地址吗?

    当用户注册时 我应该将他们的电子邮件按原样存储在数据库中还是对其进行哈希处理 我希望稍后能够解密 那么我应该使用 md5 吗 谢谢你 No md5 is 单向哈希函数 http en wikipedia org wiki Cryptogra
  • Node.js 中的 PHP exit()/die() 等价物是什么

    什么是 PHP die http www php net manual de function die php http www php net manual de function die php 在 Node js 中等效吗 https
  • 将函数中的会话变量传递给 codeigniter 中的助手

    这就是我正在尝试做的事情 这是控制器中的功能 public function get started if test login this gt session gt all userdata this gt load gt view te
  • Laravel 按动态 ID 数组对集合进行排序 [重复]

    这个问题在这里已经有答案了 我有以下 people array 5 2 9 6 11 people collection People find people 但当我倾倒并死去时 people collection集合按 ID ASC 排序
  • Android GCM 服务器的 API 密钥

    我有点困惑我应该为 GCM 服务器使用哪个 API 密钥 在文档中它说使用 android api 密钥 这对我不起作用并且总是给出未经授权的 http developer android com google gcm gs html ht
  • 如何从字符串中删除所有数字?

    我想删除字符串 0 9 中的所有数字 我写了这段有效的代码 words preg replace 0 words remove numbers words preg replace 1 words remove numbers words
  • Zend Framework Zend_Form 装饰器: 位于按钮元素内部?

    我有一个像这样创建的按钮元素 submit new Zend Form Element Button submit submit gt setLabel My Button submit gt setDecorators array Vie
  • 如何使用 Google 帐户对我们网站中的用户进行身份验证

    如何在我们的网站中使用 Google 帐户对用户进行身份验证 我希望用户重定向到谷歌登录页面 然后将他重定向到我的网站 我想要这个 PHP 实现 你要OAuth http code google com apis accounts docs
  • 文件修改时间检查的成本

    对于Linux下包含少量字节的文件 我只需要处理自上次处理以来发生更改的时间 我通过调用 PHP 检查文件是否被更改clearstatcache filemtime 定期 由于整个文件总是很小 因此删除对 filemtime 的调用并通过将

随机推荐

  • 删除除文件名 php 之外的所有内容

    我试图删除文件名 ex 之前的所有内容 home mike whatever test 1 txt 只留下test 1 txt 最简单的方法是什么 thanks basename
  • 在 iPhone 核心数据中的一对多关系上使用级联删除规则和 validateForDelete

    Preface 我有两个实体定义为一对多关系 A B B 与 A 的关系称为 myAs 是一种以 Nullify 作为删除规则的一对多关系 A到B的逆关系是一对一关系 以Cascade为删除规则 我已经在 B 类上实现了 validateF
  • 使用 HTML 表单隐藏元素传递数组

    我试图在隐藏字段中发布一个数组 并希望在 PHP 中提交表单后检索该数组 postvalue array a b c
  • PowerShell 如何处理“.”在路径中?

    打开 PowerShell 终端时请考虑以下命令序列 PS C Users username gt cd source PS C Users username source gt dir temp PS C Users username s
  • Linux内核中如何加入线程?

    主要问题是 我们如何等待 Linux 内核中的线程完成 我看过一些关于在 Linux 内核中处理线程的正确方法的帖子 但我不确定我们如何等待主线程中的单个线程完成 假设我们需要线程 3 完成然后继续 include
  • 是否有在 docker alpine linux 基础映像上设置 glibc 的最佳实践?

    是否有在 docker alpine linux 基础映像上使用正确路径设置 glibc 的最佳实践 以便任何生成的进程都可以正确引用已安装 libc 库的位置 就在这里 我使用了定制的 glibc 在其上安装了 JRE 你可以找到它her
  • 无需身份验证即可从 Dropbox 链接获取元数据

    我想检查版本更改 获取带有保管箱上共享链接的文本文件的元数据 我不会使用 dropbox api 因为它会让用户使用自己的帐户 我希望他们链接到我的帐户 但我无法手动执行此操作 因为我稍后可能会更改密码 所以 没有身份验证令牌 只需从保管箱
  • 检测Firebug的Javascript?

    检测用户是否启用 Firebug 的可靠方法是什么 原答案 检查是否有console对象 仅使用 Firebug 创建 如下所示 if window console window console firebug Firebug is ena
  • FitNesse 应用程序配置

    我很难理解 http www syterra com Fit AppConfigFiles html 如果我的应用程序和装置位于 c Projects App 中 并且 FitNesse 是从 c Projects Sandbox FitN
  • 使用 wxpython 创建菜单

    我使用以下方法创建了一个菜单 fileMenu wx Menu fileMenu Append ID NEW New tCtrl N Creates a new file 我可以通过单击菜单上的 新建 或单击 Ctrl N 来访问 新建 我
  • 如何处理ajax调用的json响应

    我的网络服务返回一个 JSON 对象 如下所示 abc xyz option 3 即当我将此地址放入 Chrome 浏览器中时http localhost 8088 rest getOptions我得到上面 我正在尝试在浏览器中阅读此内容
  • 滚动线性回归

    我需要一次执行 X 个周期的滚动线性回归 我有以下熊猫数据框 value 0 4354 1 7564 2 657 3 7876 我可以使用 scipy 对整个数据框执行线性回归 如下所示 from scipy import stats sl
  • 使用 AzureReader2 插件的 Azure ImageResizer 无法调整大小

    EDIT 我让它工作 但我必须添加 RemoteReader 插件 当我从项目中删除 AzureReader2 插件时 它仍然可以工作 这是有道理的 但是 AzureReader2 插件对我有什么好处 原问题 我已经完成了概述的所有事情he
  • js中如何实现排序?

    我有一个像这样的数组 var temp rank 3 name Xan rank 1 name Man rank 2 name Han 我试图按如下方式对其进行排序 temp sort function a a rank 但它不起作用 任何
  • Apache / Tomcat 中使用 mod_jk 的多个子域

    我目前正在尝试为从一台 Tomcat 服务器运行的两个单独的应用程序设置两个子域 但我很难让它继续下去 如果没有子域 我可以为一个虚拟主机配置两个挂载点 并能够以这种方式访问 应用程序 看起来像 http url confluence 但这
  • Java中如何访问一个对象的父对象?

    看看这个例子 class Parent Child child new Child Random r new Random class Child public Child access a method from Random r fro
  • jQuery 检查图像是否已加载

    我需要有关以下不起作用的代码的帮助 var timeoutID 0 var currentImage 0 first image is position 0 in arrImages array var arrImages bla bla
  • 声明变量时出现 NoSuchMethodError

    我在使用 Spark 和 Scala 时遇到了一个奇怪的错误 我有一段声明变量的代码 var offset 0 这会导致以下异常 java lang NoSuchMethodError scala runtime IntRef create
  • 了解包 geosphere 中 `areaPolygon()` 的输出

    From 这个问题我获得了很棒的功能areaPolygon 这给了我坐标多边形内的区域 然而 当我尝试该函数时 计算结果似乎很奇怪 我首先创建一组两点 require fields coords lt c 11 3697193956209
  • PHP exec() 通过浏览器执行时不会执行 shell 命令

    我有一个 PHP 脚本 它调用 exec 来执行将 PDF 转换为 JPG 的命令 该命令在 bash 中运行良好 为了抢占您最初的故障排除猜测 请注意以下事项 安全模式 关闭 包含 PDF 和脚本的目录的权限设置为 777 该目录也是写入