我正在配置 osTicket 帮助台软件的一个实例,它是开源的并用 PHP 编写。我的服务器在 Ubuntu 16.04 上使用 PHP7.1 运行 Apache2.4。
现在,我正在尝试将 osTicket 与 Office 365 连接,以获取传入的电子邮件到帮助台,使用 POP+SSL 在端口 995 上连接 outlook.office365.com(如此处所述https://support.office.com/en -us/article/office-365-urls-and-ip-address-ranges-8548a211-3fe7-47cb-abb1-355ea5aa88a2?omkt=en-US&ui=en-US&rs=en-US&ad=US )。
我的问题是连接需要很长时间,最多几分钟。但最终,他们成功了(至少有一些)。
我用 telnet outlook.office365.com 995 对此进行了调试,发现尝试使用 IPv6 地址进行连接。当一次尝试超时时,下一次尝试会自动接收另一个 IP - 通常是另一个 IPv6 地址。
但是,当 telnet(以不可预知的时间间隔)收到用于连接的 IPv4 地址时,我可以立即继续执行 HELO 和 POP3 命令。
因此,看起来 IPv6 是 osTicket 内部连接速度慢的原因,但我不确定在哪里可以解决问题。
是否可以通过 PHP 或 curl(如果使用此选项?)或 Apache 将 IPv4 设置为首选,或者某些操作系统级别的命令是否可以解决此问题?但是,我不想为整个服务器禁用 IPv6。