首页 > 解决方案 > joomla, php, windows server - 无法实例化邮件功能

问题描述

将旧的 Joomla 2.5.x 安装从旧的 win 2008 服务器移动到 win 2016 服务器。将来我们将升级到最新版本的 joomla/php,但现在我正试图让当前(旧)版本正常工作。PHP 是 5.4.10

我有 joomla 网站本身工作。虽然联系表格不起作用。当您尝试发送时,它会引发错误“无法实例化邮件功能”。

Joomla 在相同的 php 安装下运行 - 我从旧服务器复制它。joomla 配置也是相同的,除了在相关的地方更新主机名/路径等。我搜索了新服务器上的所有文件,看看是否有任何东西指向旧机器上的邮件服务器 - 没有找到任何东西。我已经确认新机器上的邮件服务器正在工作 - 向我自己发送了一封电子邮件,并远程登录到端口 25 以确认它正在接受本地连接。但我从错误中猜测,它甚至在尝试连接到邮件服务器之前就失败了。并且两台服务器之间的文件路径也应该相同。

在这一点上,我的猜测是 IIS 7.x 和 IIS 10.x 之间存在一些差异,这会导致这种情况,但这只是一个猜测。希望其他人可能有更具体的猜测?;)

提前感谢您的帮助。

标签: phpwindows-server-2008joomla2.5windows-server-2016

解决方案


好的,看起来问题不在于邮件程序,而在于 dns。它没有解决任何问题。

$dnsrecs = dns_get_record('google.com'); 返回 dns 查询失败。但是,服务器本身的 dns 似乎正在工作。命令提示符下的 nslookup 有效。我什至尝试将名称服务器切换到谷歌服务器——它也可以在命令提示符下工作,但不能在 php 中工作。由于这是与原始主题完全不同的问题,因此我将其标记为已回答并打开一个新问题。


推荐阅读