mail() 超时问题

2024-04-08

当我通过浏览器执行电子邮件脚本时,会返回超时致命错误(除非我大幅增加执行时间,否则它将正常运行,而不是我正在寻找的解决方案)。电子邮件已发送,但需要很长时间(平均 5 分钟)才能到达(我的收件箱)!
(考虑到通过命令行它可以完美地工作,我认为 php.ini 中的 SMTP 肯定配置得很好。)

这是浏览器请求执行的代码:

<?php
mail('[email protected] /cdn-cgi/l/email-protection', 'test subject', 'test body', 'From: Andre Matos <[email protected] /cdn-cgi/l/email-protection>');
?>

当我通过命令行运行相同的代码(真的一样吗?我开始怀疑自己)时:

php -r "mail('[email protected] /cdn-cgi/l/email-protection', 'test subject', 'test body', 'From: Andre Matos <[email protected] /cdn-cgi/l/email-protection>');"

它工作完美!脚本运行,然后停止,电子邮件立即到达(2/3 秒)。

那么,是什么导致了这种差异以及如何解决它?有任何想法吗?
提前致谢。


[编辑]一些额外信息:
- 机器是windows
- 服务器是本地主机
- php.ini 对于浏览器和 cli 实例是相同的


[edit2]
感谢大家尝试猜测问题所在。我提出这个问题,希望有人以前遇到过这个问题,并且知道一些具体的事情。鉴于没有出现任何具体内容,并且没有一个建议真正起作用,我决定接受一个让我能够就问题得出更多结论的建议... +1 对于您所有有用的知识/想法(/猜测):-)


我假设了一些原因,但我习惯了linux,在windows上我只能猜测:

  1. php_cli 和 mod_php 是 2 个不同的二进制文件,mod_php 可能会受到轻微损坏
  2. php_cli 和 mod_php 使用 2 个不同的用户,apache 用户的网络配置文件可能是问题(dns、防火墙、代理...)
  3. 您的 php 脚本位于“有问题”的位置或包含一些有问题的字符,但您的 cli 脚本是通过参数执行的,请尝试执行相同的脚本: php -f z:\path\to\php\mail.php
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

mail() 超时问题 的相关文章

  • VS Code - 如何默认打开终端窗格?

    在 Visual Studio Code 中 当我打开应用程序时 每次都必须重新打开集成终端窗口 您是否知道默认情况下在应用程序加载后立即打开 CLI 窗格而无需手动执行的步骤ctrl backtick每次 您可以尝试以下操作 安装扩展 自
  • PHP cURL 重定向到本地主机

    我正在尝试使用带有 cURL 的 php 脚本登录外部网页 我是 cURL 的新手 所以我觉得我错过了很多东西 我找到了几个例子并修改了它们以允许访问https页面 最终 我的目标是能够登录页面并在登录后通过指定的链接下载 csv 到目前为
  • 在Windows上安装php Composer时出现错误

    在安装 Composer 以使用 Laravel 框架时 我遇到了一些错误 Download failed file get contents SSL operation failed with code 1 OpenSSL Error m
  • PHP 中 file、file_get_contents 和 fopen 之间的区别

    我是 PHP 新手 我不太确定 两者之间有什么区别file file get contents and fopen 函数 什么时候应该使用其中一个而不是另一个 前两个 file http www php net manual en func
  • 重定向而不是 404 错误页面 - 状态代码不起作用 (Nginx)

    我目前正在迁移到 nginx 服务器 我尝试将其放入名为的 404 ErrorDocument 中404 php 如果我现在尝试访问http mydomain com 404 php 这按预期工作 它将我重定向到 Google 但是一旦我尝
  • 知道何时调用 persist

    我正在使用 Doctrine 2 作为我的 ORM 一切进展顺利 但我一直想知道EntityManager persist 方法 这 持久实体 https www doctrine project org projects doctrine
  • 如何在 PHP 中将默认日期设置为波斯日期?

    如何在 PHP 中将默认日期设置为波斯日期 说吧 如果我echo这个功能date Y m d 然后它会显示2018 03 05但我想要1396 12 14波斯日期 请检查 http php net manual en intldatefor
  • 从目录中读取所有文件内容 - php

    这实际上是一个简单的任务 我想显示指定文件夹中所有文件的内容 我正在传递目录名称 echo a href row qname a 在第二页上 我正在迭代目录内容 while entryname readdir myDirectory if
  • 在 php 和 mysql 中使用 utf8mb4

    我读过 mysql gt 5 5 3 完全支持每个可能的字符 如果您使用编码utf8mb4对于某个表 列http mathiasbynens be notes mysql utf8mb4 http mathiasbynens be note
  • 如何在 Laravel 5 中的视图模板上显示会话数据

    我正在尝试在 Laravel 5 中的视图模板上显示会话数据 但是它似乎没有显示任何内容 这是我用来设置会话的代码 Session set bookingConfirmed BookingDates where id Session get
  • 正确的标头 php mysql blob 显示图像

    我正在尝试在我的 PHP 页面中显示来自 mysql blob 的图像 我知道这不是最佳实践 然后我会将其引入我的 iOS 应用程序中 我在设置页面标题时遇到问题 我认为需要将其设置为图像 所以 这显示了图像 但我不相信页眉是正确的 hea
  • PHP 中的抽象类是什么?

    PHP 中的抽象类是什么 如何使用 抽象类是至少包含一个抽象方法的类 该方法中没有任何实际代码 只有名称和参数 并且已被标记为 抽象 这样做的目的是提供一种模板来继承并强制继承类实现抽象方法 因此 抽象类是介于常规类和纯接口之间的东西 此外
  • Opencart 的 $this->config->get('module_var_name')

    我正在尝试自定义 Opencart 支付模块 我看到很多地方都使用了配置信息 但我找不到任何创建正在使用的变量的内容 我知道在管理页面中 如果我选择 paypal 标准 我可以设置所有 配置 信息 但我找不到强调它的 模型 是否有模型 我希
  • Laravel 类邮件程序不存在

    我将应用程序从 5 更新到 5 2 现在 当我调用 Mail send 时 它会返回一个异常 Class mailer 不存在 Mail send emails mail data gt content function m use to
  • 使用 IntlDateFormatter 转换非公历日期

    我应该如何使用将非公历日期转换为其他日历类型IntlDateFormatter 我要转换 1392 01 02 from persian to islamic日历 我尝试了以下代码 但它没有转换日历 formatter IntlDateFo
  • PHP:展平数组-最快的方法? [复制]

    这个问题在这里已经有答案了 是否有任何快速方法可以在不运行 foreach 循环的情况下展平数组并选择子键 在本例中为 键 和 值 或者 foreach 始终是最快的方法 Array 0 gt Array key gt string val
  • 如何检查一个值是否已经存在以避免重复?

    我有一个 URL 表 但我不想要任何重复的 URL 如何使用 PHP MySQL 检查给定 URL 是否已在表中 如果您不想重复 可以执行以下操作 添加唯一性约束 use REPLACE http dev mysql com doc ref
  • 除括号之间的内容外,所有内容均小写

    考虑以下字符串 LoReM FOO IPSUM dolor BAR Samet fooBar 我正在寻找一种方法来小写所有内容 除了 brackets 之间的内容应该被忽略 所以期望的输出是 lorem FOO ipsum dolor BA
  • 连接 3 三张表

    我有这个图表应该可以解释我的情况 我需要一些关于连接 3 个表的帮助 我不知道如何做这种事情 因此 我可以通过执行以下操作来经历一段检索记录的 while 循环 img src alt Album AlbumID 使用内部联接 http w
  • MySQL 正在将我的时间戳值转换为 0000-00-00

    我是 PHP 新手 目前仍在学习中 我认为我的注册表有问题 username password email全部成功插入MySQL registered and last seen不要 我以为我正在使用getTimestamp 错了 但它呼应

随机推荐

  • withColumn() 中的 PySpark list() 只能工作一次,然后 AssertionError: col 应该是 Column

    我有一个 DataFrame 其中有 6 个字符串列 名为 Spclty1 Spclty6 另外 6 个字符串列名为 StartDt1 StartDt6 我想将它们压缩并折叠成如下所示的列 Spclty1 StartDt1 Spclty6
  • 究竟是什么在管理光束中的水印?

    Beam 的强大功能来自于它先进的窗口功能 但它也有点令人困惑 在本地测试中看到一些奇怪的情况 我使用rabbitmq作为输入源 其中消息并不总是得到ackd 并修复了不总是关闭的窗口 我开始挖掘 StackOverflow 和 Beam
  • C# 对带有换行符的文本字符串进行编码

    我有一个字符串正在写入响应的输出流 保存此文档并在 Notepad 或 WordPad 中打开它后 我会在预期的位置得到格式良好的换行符 但是当我使用常规的旧 Windows 记事本打开此文档时 我会得到一个带有 方形符号 的长文本字符串
  • Clearcase 中的派生对象

    我想问一下 ClearCase 中的派生对象到底是什么以及如何工作 另外我想问是否有其他程序具有相同的功能 因为在 Git MKS 或 IBM Rational Team Concert 中我找不到类似的东西 它是否已经过时了 这与动态视图
  • 如何在 JavaScript 中逐行循环换行符分隔的 json?

    我的项目中有一个 JSON 文件 如下所示 id 707860 name Hurzuf country UA coord lon 34 283333 lat 44 549999 id 519188 name Novinki country
  • SQL查询6度分离用于网络分析

    我正在使用 D3 js 构建网络分析 以在我的应用程序中显示连接的电话号码 分隔度可达六度 用于查找初始连接的 SQL postgres 如下 相当简单 然而 我对如何修改它以遍历六个级别的连接然后停止感到困惑 SELECT player
  • 更改输入焦点上的 div 颜色

    我正在尝试改变的颜色div带信s div class search container div
  • 将多个同名资源添加到 Xcode for iPhone

    是否可以在资源组中使用图像的双重名称 谢谢 您可以拥有多个同名资源 只要 1 它们不在同一目录中 并且 2 您已通过引用将资源添加到您的 Xcode 项目中 1 因为任何目录都不能包含两个同名的文件 2 因为 Xcode 尊重通过引用添加的
  • 如何检查数组中的所有元素是否为零? [复制]

    这个问题在这里已经有答案了 我想知道除了nil数组中的值 arr nil nil nil nil gt true arr nil 45 nil nil gt false 可以有任何类型的任何值 不仅45 Use the Enumerable
  • win-7 cmd 上的 GNU awk,不会将输出重定向到文件

    如果相关的话 我直接从sourceforge中的GNU指向源下载了GNU awk V 3 1 6 我正在使用 Windows 版 wget 获取 URL 页面 处理传入的文件后 我将其减少为单行 我必须从中提取一个键值 这是一个相当长的字符
  • 在起订量中重置模拟验证?

    设置如下 public interface IFoo void Fizz Test public void A var foo new Mock
  • C 字符串文字所需的转义字符

    我有一个以零结尾的字符串 char s 我正在生成 C 源代码 在运行时 并且我想输出一个表示 s 的字符串文字 它将在生成的 C 程序中生成与 s 相同的字符串 我使用的算法是 Output Foreach char c in s if
  • 使用 ASP.Net,是否有一种编程方式来截取浏览器内容的屏幕截图?

    我有一个 ASP Net 应用程序 根据需要的功能 用户希望能够截取屏幕截图 虽然我知道这可以模拟 但如果有一种方法可以获取 URL 或当前呈现的页面 并将其转换为可以存储在服务器上的图像 那就太好了 这疯了吗 有办法做到吗 如果有的话 有
  • 创建/渲染 scene2d 舞台后重置视口

    在我的游戏中 我正在绘制一个 scene2dStage使用自定义世界坐标系 然后 我想绘制一个调试 UI 上面包含一些文本 例如 FPS 但只需使用屏幕坐标 即文本位于屏幕右上角的位置 我的主要渲染方法如下所示 Override publi
  • 为什么在 Firefox 开发工具中传输的字节大于 size 字节?

    我正在衡量网站的性能 当查看 firefox developer tools 时 我注意到一个奇怪的行为 有一个特定的JS文件 传输的大小为2 831 54 KB 但实际大小为1280kb 根据 Mozilla 的说法 https deve
  • 设置 HTML 文本框的最大字数

    我想设置一个最大数量用户可以在文本框中输入的单词数 not字符数但是words 这个有可能 我做了一些挖掘 发现如何获取用户使用正则表达式输入的单词数 但我不确定如何阻止用户在达到最大值后输入更多字母 var jobValue docume
  • 使用 JSP 时如何使用 Struts 2 ModelDriven 接口访问 POJO 中的属性?

    我有一个实现的动作类ModelDriven界面 这ModelDriven是一个常规 POJO 问题在于它的属性之一是另一个对象 想象一下我的模型驱动is a object calledPersonand my person has an a
  • 如何声明一个返回函数指针的函数?

    想象一个带有参数 double 和 int 的函数 myFunctionA myFunctionA double int 这个函数应该返回一个函数指针 char myPointer 如何在 C 中声明这个函数 typedef是你的朋友 ty
  • jQuery DataTables:如何按自定义参数值而不是单元格内容排序?

    我有一个非常常见的用例 我在价格列中显示格式化的价格 例如 20 000 00 因此 当我尝试对它进行排序时 它会将其视为字符串并且排序效果不佳 10 00 20 000 00 5 000 00 我可以使它按数据参数值 非格式化浮点数 排序
  • mail() 超时问题

    当我通过浏览器执行电子邮件脚本时 会返回超时致命错误 除非我大幅增加执行时间 否则它将正常运行 而不是我正在寻找的解决方案 电子邮件已发送 但需要很长时间 平均 5 分钟 才能到达 我的收件箱 考虑到通过命令行它可以完美地工作 我认为 ph