阿里云短信Alibaba Cloud SDK for PHP宝塔面板部署教程
刚完事阿里云的发信,弄过来发现网上关于阿里发信的资料不齐全,阿里云官方的文档也是含糊不清。所以这里我总结一完整的部署教程给有需要的人参考
先上效果图:
第一步,完成centos里对composer的安装
因为阿里的Cloud SDK需要借用composer,所以这里先安装composer,连接终端输入:
curl -sS https://getcomposer.org/installer | php
该指令为下载composer的安装包,将自动下载composer.phar文件到本地
wget -P /root http://cdn.dkfirst.cn/temp/composer.json
接着输入该行命令,为下载composer的配置文件json到本地,没有该配置文件无法安装composer。无法使用wget命令的先百度怎么安装wget
composer dump-autoload --optimize
该命令完成类映射,目前就完成composer的安装,可以进行阿里云Cloude SDK安装了
第二步,安装阿里的Cloud SDK安装composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
安装之前,可以运行该行,完成对composer的镜像地址修改,改成国内阿里云,不然用国外的下载特别慢。
php -d memory_limit=-1 composer.phar require alibabacloud/sdk
然后执行Cluod SDK安装脚本,宝塔某些版本安装过程可能会提示让你解除函数限制,根据提示去宝塔里相应版本的PHP设置里解除限制即可
<?php
require __DIR__ . '/vendor/autoload.php';
然后代码里即可引入该autoload.php 自动加载文件,该加载文件官方下载地址为https://github.com/aliyun/openapi-sdk-php
以上就完成了阿里发信的所有环境安装,接着阿里官方的API DEMO有现成的,去复制填入你的代码行即可,记得相关AK信息也要去创建并填入代码
参考连接:阿里官方 PHP SDK快速开始 https://help.aliyun.com/document_detail/53111.html?spm=a2c1g.8271268.10000.121.386edf251AqkMT
阿里官方发信DEMO API https://api.aliyun.com/new#/?product=Dysmsapi&api=SendSms
composer 配置 切换中国镜像 https://www.cnblogs.com/niuben/p/11007804.html
提示找不到composer.json的方案 https://stackoverflow.com/questions/31900211/composer-could-not-find-a-composer-json
1.创建签名 (记住签名名称,后面代码配置中需要),2小时以内会审核通过。
2.创建模板 (记住模板CODE ,后面代码配置中需要)
3. 生成AccessKey ID 和 Access Key Secret (记住这两个参数值,后面代码配置中需要)
4.下载SDK官方地址:https://help.aliyun.com/document ... 34.507901.12.b1ngGK
解压后得到:文件夹 aliyun-dysms-php-sdk
5.将文件aliyun-dysms-php-sdk 复制到项目中(根据框架不同,引入到正确的位置)。
6.修改 SmsDemo.php文件中内容:
7.再修改SmsDemo.php/sendSms方法中参数(本人是改成变量,以传参形式传递,也可以写死)
https://img-blog.csdnimg.cn/20190510132742247.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2Nyb3NzYW5nbGVzXzIwMTc=,size_16,color_FFFFFF,t_70
https://img-blog.csdnimg.cn/20190510132800112.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2Nyb3NzYW5nbGVzXzIwMTc=,size_16,color_FFFFFF,t_70
8.去自己创建的接口方法中调用sendSms()方法,并传入三个参数,$phone 是前端传来的手机号,$rand是生成的随机数, code为之前阿里云后台获取的 模板CODE 。
注意:先引入该方法所在的类文件。
执行的代码引入:require DT_ROOT.'/api/aliyun-dysms-php-sdk/api_demo/SmsDemo.php';
https://img-blog.csdnimg.cn/2019051013260496.png
PHP 阿里云短信发送验证码 功能完成。
注意:复制AccessKeySecret的时候千万注意后面不要有空格之类的,本人调试了半天才发现是这个问题
转自:https://blog.csdn.net/crossangles_2017/article/details/90056445
页:
[1]