Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/240.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当我从一个目录转发到另一个目录时,哪个PHP配置正在运行?_Php_Imap_Forward_Server Configuration - Fatal编程技术网

当我从一个目录转发到另一个目录时,哪个PHP配置正在运行?

当我从一个目录转发到另一个目录时,哪个PHP配置正在运行?,php,imap,forward,server-configuration,Php,Imap,Forward,Server Configuration,我正在测试一个基于上一个问题的想法,但我遇到了一个非常有趣的问题 我的主目录位于服务器的一条路径上(所有主目录都位于该路径),出于我只能猜测的原因,该目录的PHP配置没有打开IMAP 但是,我的项目目录(位于live站点的测试镜像上)确实启用了IMAP 所以我测试的是在发送电子邮件时使用.forward文件触发php脚本。我唯一可以轻松使用的电子邮件是我的用户电子邮件,这意味着我必须在我的个人主目录中设置.forward .forward可以工作,但电子邮件会反弹回来,并出现部分错误。据我所知,

我正在测试一个基于上一个问题的想法,但我遇到了一个非常有趣的问题

我的主目录位于服务器的一条路径上(所有主目录都位于该路径),出于我只能猜测的原因,该目录的PHP配置没有打开IMAP

但是,我的项目目录(位于live站点的测试镜像上)确实启用了IMAP

所以我测试的是在发送电子邮件时使用.forward文件触发php脚本。我唯一可以轻松使用的电子邮件是我的用户电子邮件,这意味着我必须在我的个人主目录中设置.forward

.forward可以工作,但电子邮件会反弹回来,并出现部分错误。据我所知,脚本失败是因为“意外函数open_imap()”,这是我在个人文件夹中尝试执行整个操作时得到的结果

所以问题似乎是我可以直接从浏览器运行脚本,因为脚本位于一个有IMAP的目录中,但是当我从我的主目录(同样没有IMAP)向它发送电子邮件时,它默认为触发脚本的文件路径的PHP设置,而不是脚本本身路径的配置

因此:

  • 我完全错了,只是调试得不够
  • 如果我是对的,有没有办法让脚本遵循自己路径的php配置
  • 如果没有,除了设置所有新的电子邮件帐户或请求服务器管理员打开IMAP之外,还有什么其他方法可以实现这一点吗

  • 我不确定这是否是原因,但您可以对web服务器和命令行界面的php进行不同的设置。这意味着,如果访问该网站,将使用另一种配置,而不是从命令行运行php

    在Debian上,Apache web服务器的设置位于
    /etc/php5/apache2/
    中,CLI的设置位于
    /etc/php5/CLI/


    但我不知道这是否与您的IMAP问题有关。

    谢谢您的提示。事实证明,我尝试的每个不需要浏览器的功能(编写文件、发送电子邮件等)都会出错。如果我能确认这与CLI有关,我会将其标记为答案。也许当你通过网站访问时,你会在引导过程中扩展包含路径?事实证明你是对的,但我一开始就错了。顶部没有CGI二进制文件,imap也没有启用。但我最终还是把它用在了其他东西上。