PHP 扩展已在命令行 (cli) 中加载,但未由 apache 加载

2024-01-31

最终更新。

问题解决了。

我解决问题的方法是按照以下链接的说明完全从源代码重新安装 Apache 和 PHP。

http://dan.drydog.com/apache2php.html http://dan.drydog.com/apache2php.html

然后按照以下说明直接将扩展构建到 PHP 中来进行扩展 下面的链接。

唯一的问题是二进制文件都只在特定路径中,我认为这是一个很容易解决的问题。

谢谢大家,这是我在 Stackoverflow 上的第一篇文章,我花了一整天的时间来制作我的第一个 php 扩展。虽然有点难,但是我喜欢! :D

原始问题

我正在尝试按照以下链接的说明构建一个 php 扩展:

http://docstore.mik.ua/orelly/webprog/php/ch14_03.htm http://docstore.mik.ua/orelly/webprog/php/ch14_03.htm

我使用以下步骤将“rot13”的扩展构建到 php 中

./buildconf
./configure --enable-rot13
make
sudo make install

然后我通过命令行 php 测试了该扩展。输出与上面的文章完全相同。

我想在将扩展构建到 php 本身中之后,我不需要关心 php.ini 文件。然后我尝试在浏览器中测试扩展,我发现 phpinfo() 页面没有显示有关新扩展的任何信息,而 php -m 命令显示我的扩展已加载。我检查了apache2日志,没有错误。

我用谷歌搜索了将近一天,没有任何线索。 stackoverflow 中的一些线程类似,但没有真正有效的解决方案。

我的系统是Ubuntu 11.10和php 5.3.10和apache2.2.20。

如果各位有线索,请帮忙。谢谢!

Update:

我确实将 extension=rot13.so 放在 /etc/php5/apache2/php.ini 路径下的 php.ini 文件中,但现在每当我重新启动 apache2 服务器时,都会出现以下错误。

PHP Warning:  PHP Startup: rot13: Unable to initialize module
Module compiled with build ID=API20090626,TS,debug
PHP compiled with build ID=API20090626,NTS

这些选项需要在第 0 行的 Unknown 中匹配

任何人都知道导致此故障的原因吗?

顺便说一句,当我编译扩展时,我确实使用了 ./configure --enable-rot13 --with-php-config=/usr/local/bin/php-config 来确保它使用 php 的配置文件。

再次更新:

我发现网页中的 phpinfo() 有不同版本的 php -i 我从命令行获得...这有多奇怪?我会尝试用谷歌搜索如何解决这个冲突。


在 Ubuntu 中,有 2 个 php.ini 文件,一个用于 CLI,一个用于 apache。

默认情况下,它们位于/etc/php5/cli/php.ini and /etc/php5/apache2/php.ini.

在您的情况下,您还需要在 apache2 php.ini 文件中启用扩展。

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

PHP 扩展已在命令行 (cli) 中加载,但未由 apache 加载 的相关文章

  • Zend Framework 生成唯一的字符串

    我想生成一个唯一的 4 6 个字符长的字母数字字符串 以便与每个记录 用户 一起保存在数据库中 db 字段具有唯一索引 因此尝试保存预先存在的字符串会生成错误 现在我正在生成一个随机字符串并使用 try catch 因此在添加新记录时如果抛
  • PHP 如何判断用户是否按下了 Enter 键或 Submit 按钮?

    我遇到的问题是我在一个表单中有多个提交输入 每个提交输入都有不同的值 我更愿意将它们保留为提交 Whenever the user presses Enter it is as though the topmost submit input
  • gmail 不断阻止 PHPmailer 登录

    我将在接下来的 8 小时内部署一个网站 而 Gmail 刚刚停止接受 PHPmailer 登录我的帐户 起初 它在测试过程中工作了几个小时 然后 它就停止工作了 我已经允许所有允许不太安全的应用程序从 gmail 登录 但它仍然不允许 ph
  • 搜索引擎如何找到相关内容? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 Google 在解析网络时如何找到相关内容 例如 Google 使用 PHP 原生 DOM 库来解析内
  • 当数据验证失败时保留表单字段中的值

    我在弄清楚验证失败时如何保留用户数据时遇到问题 我对 PHP 有点陌生 所以我的逻辑可能会犯一些巨大的错误 目前 如果验证失败 所有字段都会被清除 并且 Post 数据也会消失 这是一些代码 假设用户输入无效电子邮件 我希望保留 名称 字段
  • 重定向而不改变url

    我总是不喜欢 htaccess 我正在尝试建立一个所有请求都通过index php 的网站 但我希望URL 类似于www sample com home 该网址实际上会加载 www sample com index php page hom
  • PHP MySQL 使用选项/选择 HTML 表单标签进行多重搜索查询

    我正在尝试使用两个搜索字段设置基本的 MySQL LIKE 搜索 我不想拥有它 所以它有多个可选搜索字段 例如if isset POST city isset POST name 我不知道如何用 HTML 来做到这一点
  • 无法查看神经节仪表板

    我已经使用 rpm 文件进行了 ganglia 设置 OS centOS 6 3 Server httpd gmond 和 gmetad 正在运行 当我在浏览器中加载它时收到 禁止错误 Forbidden You don t have pe
  • 检查 PHP 中“@”字符后面的单词

    我现在正在制作一个新闻和评论系统 但是我已经在一个部分上停留了一段时间了 我希望用户能够在 Twitter 上引用其他玩家的风格 例如 用户名 该脚本看起来像这样 不是真正的 PHP 只是想象脚本 3 string I loved the
  • 如何使用 php 发送服务器错误响应?

    一旦用户点击删除按钮我的 jQuery 脚本要求服务器删除所选项目 现在我想要我的php发送成功或错误响应的脚本 是否有可能触发错误回调万一该项目无法删除 Thanks 我的 jQuery 代码 ajax type post url myA
  • 从 smarty 访问 PHP 文件的变量(本地或全局)

    我有一个 php 文件 其中包含一些本地和全局变量 例如 foo 从此文件中调用 smarty 对象 如何在不更改 PHP 文件的情况下从 smarty 脚本访问 foo Thanks 如果你有一个名为 BASE 的常量变量 并且定义如下
  • 在 PHP 中使用 phpseclib 时出现 RSA 问题

    我正在尝试在 phpseclib 中使用 RSA 实现 我认为在函数中执行一次代码并重新使用该函数会更容易 当我尝试向代码发送短信时 我收到一条错误消息 提示 解密错误 测试还让我意识到每次代码运行时密文都是不同的 所以我显然在那里做错了什
  • jQuery Mobile 表单验证

    我有一个移动网站 除了验证之外一切都工作正常 基本上我希望从用户那里获取值 然后在单独的页面 process php 上处理它们 但是 在这样做之前 我需要检查以确保字段已填充 我已经研究了几种方法来做到这一点 但似乎没有一种有效 我现在有
  • 如果循环中内存超出,我可以在 for 循环中抛出异常吗?

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 如何处理 foreach 循环中发生
  • 标准化 UTF-8 到底是什么?

    The 重症监护室项目 http userguide icu project org transforms normalization 现在也有一个PHP库 http us php net manual en class normalize
  • Laravel 中只向登录用户显示按钮

    如果我以 John 身份登录 如何才能只显示 John 的红色按钮而不显示 Susan 的红色按钮 测试系统环境 Win10 Laravel5 4 Mysql5 7 19 table class table table responsive
  • 如何在 PHP 中从 IP 地址/国家/地区名称查找时区 ID?

    谁能告诉我 PHP 中是否有任何方法可以从 IP 地址或国家 地区名称获取时区区域 例如 亚洲 加尔各答 描述 我正在尝试根据他 她的国家 地区设置用户时区 我从他的 IP 地址获取用户所在国家 地区 但我需要该国家 地区的时区区域 例如
  • 部署在 Apache2 系统上的 Dash 应用程序永远不会让用户通过“正在加载...”,因为它似乎无法找到其 dash .js 文件

    我正在尝试提供 python3 8 2 dash使用 Apache2 服务器的应用程序和mod wsgi 但应用程序停止在 正在加载 屏幕上 服务器为 dash 的每个 js 脚本返回 404 我在使用 dash 的内置本地服务器时没有遇到
  • post php mysql 的拆分关键字

    我有一个表存储帖子 ID 它的标签如下 Post id Tags 1 keyword1 keyword2 keyword3 我想循环遍历该表中的每一行并执行以下操作 将关键字1 关键字2 关键字3放入新表中 word id word val
  • 对具有混合类型值的数组进行数字排序

    我有一个像这样的混合数组 fruits array lemon Lemon 20 banana apple 121 40 50 然后申请sort 其功能如下 sort fruits SORT NUMERIC foreach fruits a

随机推荐