如何使用 php 在 cpanel 上创建电子邮件帐户

Posted

技术标签:

【中文标题】如何使用 php 在 cpanel 上创建电子邮件帐户【英文标题】:How to create email account on cpanel using php 【发布时间】:2016-08-27 02:14:56 【问题描述】:

我正在尝试使用 php 在 cpanel 中创建电子邮件帐户,例如 test@mydomain.com。我试过 cpanel api's , xml api 等。

fopen ("http://$cpuser:$cppass@$cpdomain:2083/frontend/$cpskin/mail/doaddpop.html?email=$euser&domain=$edomain&password=$epass&quota=$equota", "r");

这给了我错误"Cannot create email account. Possible reasons: "fopen" function allowed on your server, PHP is running in SAFE mode"

但不再工作了。谁能告诉我到底是什么问题,我必须在服务器或其他任何东西中设置任何设置。

提前谢谢你:)

【问题讨论】:

我建议你通过使用 cpanel live api 现在使用现代方式,参考:documentation.cpanel.net/display/SDK/… 如果您的服务器在“安全”模式下运行,则您的服务器处于危险的不安全状态。它在 PHP 5.4 中被删除,这意味着您的服务器的 PHP 版本必须为 5.3 或更低,这意味着您在最好的情况下已经过了大约两年的使用寿命。是时候更新了。 【参考方案1】:

正如错误所暗示的,您的 php.ini 上的 disabled_functions 列表中可能有 allow_url_fopen(默认位置是 /usr/lib/php.ini)。

您也可以使用 cPanel 提供的 perl 脚本从命令行创建电子邮件地址:

/scripts/addpop user@domain.com password quota#

Example:
/scripts/addpop contact@abc.com password 1024 (this will create the email address contact@abc.com with the password 'password' and with 1024M (1G) as quota

如果你确实想在 php 脚本中使用它,那么使用 php shell_exec() 函数来执行上面的命令,你就可以开始了。

我建议不要在 php.ini 中长期启用 allow_url_fopen 并保持这种状态,因为它可能会给您的服务器带来安全风险。

【讨论】:

以上是关于如何使用 php 在 cpanel 上创建电子邮件帐户的主要内容,如果未能解决你的问题,请参考以下文章

使用 WHM/Cpanel 通过 PHP 创建电子邮件

通过 cPanel 使用 PHP 创建 mysql DB 并导入 *.sql 文件

我们需要一个脚本来使用 PHP 中的第三方 Cpanel 详细信息创建所有文件、数据库和电子邮件的备份

使用在 django 的 cpanel 上创建的电子邮件

如何使用 php 代码在 WHM/Cpanel 中以编程方式创建数据库?

使用 cPanel 和 Laravel 将电子邮件发送到程序