【问题标题】:call python script from php that connects to MySQL从连接到 MySQL 的 php 调用 python 脚本
【发布时间】:2013-04-23 07:21:45
【问题描述】:

我可以使用system() 从 php 轻松调用 python 脚本,尽管有几个选项。他们都工作正常,除了他们都失败了。通过反复试验,我将其范围缩小到失败

import MySQLdb

我对 php 不太熟悉,但我在紧要关头使用它。我理解,虽然可能会有这样的限制存在的原因,但这将在本地服务器上,在内部使用,并且 mysql 数据库中的信息已备份并且不重要。这意味着可以合理地忽略这种限制。

但是如何让php调用导入mysql的python脚本呢?如果相关的话,我在 Linux 机器(centOs)上。

【问题讨论】:

  • 错误信息是什么。和this question 一样吗?
  • @Aya 不,如果我以自己或 root 身份运行脚本,我可以正常运行脚本。但不是作为 apache 用户。 (某些发行版中的 www-data)。在我原来的帖子中,我提到我不熟悉 php。我使用系统,它返回一个。如何捕获标准错误?
  • 看起来system() 只从输出中返回一行。也许像passthru('sh -c "python scriptname.py 2>&1"') 这样的东西会起作用?

标签: php python mysql linux


【解决方案1】:

Apache 用户(在您的情况下为 www-data)的环境有些受限。检查 Python MySQLdb 包的安装位置并编辑 Apache 用户的 env(参见 Apache 手册和您的发行版关于此的内容),使其具有可用的 Python 环境和正确的 PYTHONPATH 等。

【讨论】:

    猜你喜欢
    • 2014-11-12
    • 1970-01-01
    • 2017-02-12
    • 2019-07-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-26
    相关资源
    最近更新 更多