Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/271.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函数mail()没有';不能在AWSEC2服务器上工作_Php_Ubuntu_Amazon Web Services_Amazon Ec2_Ubuntu 14.04 - Fatal编程技术网

PHP函数mail()没有';不能在AWSEC2服务器上工作

PHP函数mail()没有';不能在AWSEC2服务器上工作,php,ubuntu,amazon-web-services,amazon-ec2,ubuntu-14.04,Php,Ubuntu,Amazon Web Services,Amazon Ec2,Ubuntu 14.04,最近我安装了一个基于Ubuntu 14.04的AWS EC2虚拟服务器。但是我还有一个问题:PHP函数mail()不起作用 我删除了sendmail 我安装了sendmail: sudo-apt-get-install-sendmail 我检查它的工作情况: ps-aux|grep sendmail 我更改了php.ini: sendmail\u路径=/usr/sbin/sendmail 我运行: sudo sendmailconfig 为所有类别选择是 已重新启动服务: 重新启动sendma

最近我安装了一个基于Ubuntu 14.04的AWS EC2虚拟服务器。但是我还有一个问题:PHP函数mail()不起作用


  • 我删除了sendmail
  • 我安装了sendmail:

    sudo-apt-get-install-sendmail

  • 我检查它的工作情况:

    ps-aux|grep sendmail

  • 我更改了php.ini:

    sendmail\u路径=/usr/sbin/sendmail

  • 我运行:

    sudo sendmailconfig

  • 为所有类别选择

  • 已重新启动服务:

    重新启动sendmail服务

  • 将我的主机名添加到/etc/hosts:

    127.0.0.1 localhost.localdomain localhost myhostname

  • 我试图测试发送:

    echo-e“到:myemail@example.com\NSObject:Test\n测试“| sendmail-bm-t-v

  • 存储在/var/mail/ubuntu中的所有电子邮件。



    我还需要做些什么吗?

    邮件功能在基于云的服务器(如aws、azure)中不起作用。我已经遇到了这个问题,并通过php mailer库解决了这个问题,所以我建议您使用它。

    邮件功能在基于云的服务器(如aws、azure)中不起作用。我已经遇到了这个问题,并通过php mailer库解决了这个问题,所以我建议您使用它。

    Ubuntu 16.04 LTS,2016年9月Amazon EC2的“默认”Ubuntu映像,将需要为php安装和配置Postfix MTA来发送邮件

    sudo apt-get update
    sudo apt install mailutils
    
    保持“internet站点”处于选中状态,并输入正确的主机名

    然后使用您最喜欢的编辑器vim或nano或其他工具,修复main.cf文件以仅处理来自本地网络接口(环回)的流量,并将域设置为您正确的主机域名

    sudo systemctl restart postfix
    
    有关详细信息,请参见:

    这就是在运行WordPress应用程序的Ubuntu16.04上运行出站电子邮件所需要的全部魔力

    祝你好运。

    Ubuntu 16.04 LTS,2016年9月亚马逊EC2的“默认”Ubuntu映像,需要安装Postfix MTA,并为PHP配置以发送邮件

    sudo apt-get update
    sudo apt install mailutils
    
    保持“internet站点”处于选中状态,并输入正确的主机名

    然后使用您最喜欢的编辑器vim或nano或其他工具,修复main.cf文件以仅处理来自本地网络接口(环回)的流量,并将域设置为您正确的主机域名

    sudo systemctl restart postfix
    
    有关详细信息,请参见:

    这就是在运行WordPress应用程序的Ubuntu16.04上运行出站电子邮件所需要的全部魔力


    祝你好运。

    邮件功能在包括AWS和Azure在内的云服务中确实有效。这完全取决于您安装的映像。例如,AmazonLinux默认安装并配置了完整的MTA。是的,它确实与PHP一起工作。我已经安装了几十个运行vanilla WP安装的基线AWS EC2实例。不需要黑魔法,电子邮件可以工作。@BohdanVorona接受接受为已接受的答案,以便对其他用户有用。邮件功能在包括AWS和Azure在内的云服务中可以工作。这完全取决于您安装的映像。例如,AmazonLinux默认安装并配置了完整的MTA。是的,它确实与PHP一起工作。我已经安装了几十个运行vanilla WP安装的基线AWS EC2实例。不需要黑魔法,电子邮件可以工作。@BohdanVorona接受接受为已接受的答案,以便对其他用户有用。