如何让我的PHP发送邮件?

JM在工作

我使用taskel安装了Ubuntu 11.04,LAMP。

我发现PHPmail()无法正常工作。

我想我需要启用它吗?我怎么做?

迷惑

从php的邮件手册中:

要求

为了使邮件功能可用,PHP需要已安装且可以运行的电子邮件系统。要使用的程序由php.ini文件中的配置设置定义。

这意味着您必须安装某种邮件服务器并配置php才能使用它。通常,此邮件服务器在Ubuntu中是后缀。但是,如果您正在编码的php端最终将存储在托管服务端(例如xmission),则很可能已经在该位置安装了邮件服务器。在这种情况下,只需在线(而不是本地)测试您的网站即可。

如果您需要在自己的系统上对其进行测试,或者打算将其托管在自己的主服务器上,则可以继续进行以下操作:

Postfix安装

安装:postfix 安装后缀 /sudo apt-get install postfix在此过程中,系统将询问您要以哪种方式安装postfix。有四种可能的模式:

  • 互联网:您自己的邮件服务器。
  • 卫星:将使用外部邮件提供商(例如Google)来发送和接收邮件。服务器将不会收到任何邮件。
  • Smarthost:两者之间的混合物。邮件存储在本地,但通过外部邮件提供商发送。
  • 仅本地:不会关心您。那是一个系统实习邮件服务器。您只能在系统上从一个用户到另一个用户发送邮件。

其余的安装选项取决于您对此常规配置的选择。

您很可能会选择卫星安装。这意味着将使用外部提供程序发送邮件。然后,作为smtp服务器(外发邮件服务器),您必须指定您的提供者smtp。其余选项不言自明。

安装后配置

大多数smtp服务器需要密码验证才能发送邮件。因此,后缀将需要知道该密码。此外,还有一些需要考虑的加密问题(您必须在Google上搜索)。这是使用密码验证(sasl)配置后缀的方式:

  • 通过单击软件中心图标或使用以下命令从终端安装libsasl2-modules 安装libsasl2-modulessasl2-bin 安装sasl2-bin

    sudo apt-get install libsasl2-2 libsasl2-modules sasl2-bin
    
  • 通过添加以下行来启用sasl-auth /etc/postfix/main.cf

     # add to /etc/postfix/main.cf
     smtp_sasl_auth_enable = yes
     smtp_sasl_security_options = noplaintext noanonymous
     smtp_sasl_password_maps = hash:/etc/postfix/sasl_password
    
  • /etc/postfix/sasl_password用以下行创建一个文件

     smtp.gmail.com [email protected]:USERPASSWORD
    

    替换实际的密码,用户名和smtp地址。

  • 更新后缀:

     sudo chmod 600 /etc/postfix/sasl_password # for safety of your smtp password
     sudo postmap hash:/etc/postfix/sasl_password 
     sudo postmap /etc/postfix/sender_canonical
     sudo /etc/init.d/postfix restart   
    

    您可能需要规避“权限被拒绝”的错误chown postfix:postfix /etc/postfix事前。

在大多数情况下,都应该这样做。但是,某些smtp提供程序需要特定的地址作为发送者或加密地址。

相关:PEAR :: Mail界面可能也使您感兴趣。

Gmail(可能还有其他服务)可能不喜欢您尝试以这种方式发送邮件,因为按照他们的标准,它可能被认为是不安全的,并且会阻止您的尝试,即在屏幕上什么也不会发生,或者整个过程的某处都会被阻止您的身份验证。另外,您的POP3也必须启用。

要对此进行反击,请参见此处。(如果您出于安全考虑,请创建一个虚拟Gmail帐户)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

我该如何向php发送会话电子邮件?

来自分类Dev

如何阻止我的PHP向PHP垃圾邮件发送error.log通知?

来自分类Dev

我如何对刚发送的邮件添加反应

来自分类Dev

我的php邮件功能正在发送空白邮件

来自分类Dev

使用 PHP 邮件发送的邮件未显示在我的邮件已发送文件夹中

来自分类Dev

我如何在示例日期自动发送PHP或jQuery邮件通知?

来自分类Dev

如何使用php会话变量发送邮件

来自分类Dev

我可以使用PHP从Shell发送邮件,但是不能从PHP网页发送邮件

来自分类Dev

如何使用php邮件功能发送图像邮件

来自分类Dev

如何使用php邮件功能发送图像邮件

来自分类Dev

如何使用php邮件功能发送此邮件

来自分类Dev

PHP邮件未将电子邮件发送到我的电子邮件地址

来自分类Dev

PHP邮件未发送电子邮件到我的电子邮件地址

来自分类Dev

SMTP connect()失败...而我尝试从php文件发送邮件

来自分类Dev

我的php代码发送空电子邮件

来自分类Dev

为什么我的php页面没有发送邮件

来自分类Dev

如何获取php mail()将用户上传的图片发送到我的电子邮件地址

来自分类Dev

如何获取php mail()将用户上传的图片发送到我的电子邮件地址

来自分类Dev

我如何通过joomla发送电子邮件

来自分类Dev

如何检查我可以发送电子邮件?

来自分类Dev

我如何从Azure功能应用发送电子邮件

来自分类Dev

我如何通过joomla发送电子邮件

来自分类Dev

如何从我的域发送电子邮件?

来自分类Dev

如何从我的网站发送电子邮件

来自分类Dev

我如何从Yii发送电子邮件

来自分类Dev

我应该如何配置以在命令行上发送邮件?

来自分类Dev

如何在Evolution中查看我发送的邮件

来自分类Dev

如何使通过PHP发送的电子邮件紧随过去发送的电子邮件?

来自分类Dev

如何防止我的邮件在 PHP 中被使用?

Related 相关文章

  1. 1

    我该如何向php发送会话电子邮件?

  2. 2

    如何阻止我的PHP向PHP垃圾邮件发送error.log通知?

  3. 3

    我如何对刚发送的邮件添加反应

  4. 4

    我的php邮件功能正在发送空白邮件

  5. 5

    使用 PHP 邮件发送的邮件未显示在我的邮件已发送文件夹中

  6. 6

    我如何在示例日期自动发送PHP或jQuery邮件通知?

  7. 7

    如何使用php会话变量发送邮件

  8. 8

    我可以使用PHP从Shell发送邮件,但是不能从PHP网页发送邮件

  9. 9

    如何使用php邮件功能发送图像邮件

  10. 10

    如何使用php邮件功能发送图像邮件

  11. 11

    如何使用php邮件功能发送此邮件

  12. 12

    PHP邮件未将电子邮件发送到我的电子邮件地址

  13. 13

    PHP邮件未发送电子邮件到我的电子邮件地址

  14. 14

    SMTP connect()失败...而我尝试从php文件发送邮件

  15. 15

    我的php代码发送空电子邮件

  16. 16

    为什么我的php页面没有发送邮件

  17. 17

    如何获取php mail()将用户上传的图片发送到我的电子邮件地址

  18. 18

    如何获取php mail()将用户上传的图片发送到我的电子邮件地址

  19. 19

    我如何通过joomla发送电子邮件

  20. 20

    如何检查我可以发送电子邮件?

  21. 21

    我如何从Azure功能应用发送电子邮件

  22. 22

    我如何通过joomla发送电子邮件

  23. 23

    如何从我的域发送电子邮件?

  24. 24

    如何从我的网站发送电子邮件

  25. 25

    我如何从Yii发送电子邮件

  26. 26

    我应该如何配置以在命令行上发送邮件?

  27. 27

    如何在Evolution中查看我发送的邮件

  28. 28

    如何使通过PHP发送的电子邮件紧随过去发送的电子邮件?

  29. 29

    如何防止我的邮件在 PHP 中被使用?

热门标签

归档