部署教程
需的准备的东西:(蓝色文字可点击)
- 微信开发者工具
- HBuilder X
- 注册一个微信小程序
- 一台服务器
- 一个已备案的域名
所需运行环境:
- php 7.3
- MySQL 5.6
本次教程使用的是宝塔面板,如不懂的可先看教程安装 “宝塔面板安装教程”
宝塔操作部分
来到宝塔面板安装环境(已安装或者已懂的忽略)
安装php7.3 和 MySQL 5.6版本
新建一个网站,创建PHP项目站点,填写您的域名
选择创建数据 、 还有PHP版本记得选择7.3
其他教程:如何配置域名到宝塔面板
进入网站根目录。看下方图片可快速进入该网站的根目录
将后端文件上传到此处并解压,效果如下图
最后将网站运行目录选择 web ,最后点击保存
数据库配置部分
选择刚刚创建网站的时候顺便创建的数据库,上传数据库文件并导入
上传并导入数据库后,前往根目录的/source/application/database.php文件设置 数据库账号、密码等
双击database.php文件,进入编辑
修改为您的数据库名、用户名、密码等。如不知道用户名是啥,可看下面的图片,前往宝塔面板那查看
上一篇:宝塔操作部分
后台配置部分
默认登录账号密码以及网址如下:
超级管理端
网站:http:// 您刚刚创建的网站域名 /index.php?s=/admin/index/index
用户名:admin
密码:jumao123
首先进入超级管理端,进行登录。登录后进入点击左边菜单栏的列表。选择新增小程序
填写小程序名称等,以及小程序管理端的账户名和密码。要记得账户名和密码哦,后续登录需要
以下进入小程序管理端配置微信小程序秘钥等信息。
小程序管理端
网站:http:// 您刚刚创建的网站域名 /index.php?s=/store/index/index
用户名:您从“超级管理端”创建的小程序账户名
密码:您从“超级管理端”创建的小程序密码
输入账号密码进行登录
登录后来到小程序设置页面,填写 AppID 小程序ID 和 AppSecret 小程序秘钥后点击保存即可。其他信息可自行查看并填写。
其他教程:小程序的APPID和App Secret(密钥)在哪里查看?
前端配置部分
打卡HBuilder工具,从本地目录导入,选择前端包
打开文件commom.js,修改域名,以及管理端创建的小程序id
修改的域名记得要用https协议。就是http后面加个s。
打开文件manifest.json,修改微信小程序AppId
现在可以点击发布小程序,编译成小程序代码了
如果控制台这里显示打开不了微信开发工具,需要去配置一下开发工具的路径,和开启微信开发工具的服务端口按钮
首先配置微信开发工具的路径
然后打开微信开发工具的设置,开启服务端口
现在应该可以了,然后重新去点发行->微信小程序。等他编译好后会打开如下窗口
点击上传代码即可
其他配置部分
微信小程序合法域名
最后一步是要去微信公众平台配置小程序的合法域名,不然小程序线上版无法使用
配置好request合法域名和downloadFile合法域名后点击保存即可
此时需要https证书,如没有的话,可看下面的教程
其他教程:微信小程序设置合法域名
宝塔申请免费HTTPS证书
选择所需配置的网站
根据下图操作,点击申请,最后等他完成后即可
自定义解析接口
使用内置接口将使用程序自带的解析接口,不过支持的平台很少,后面陆续更新
使用第三方接口需要到后端代码中修改,其文件路径是 source/application/api/controller/Apis.php文件
填写接口后请自行解析接口返回的信息,并用以下格式返回给小程序
return [
"code" => 200, // 200表示解析成功 -1 表示失败
"data" => [
"title" => "这里是分享文案",
"cover" => "这里是封面图片链接",
"images" => [], // 这里是图集的数组
"video" => "这里是视频链接",
],
"msg" => "解析成功"
];
【下面提供一个案例模板】
比如我对接一个接口,然后请求返回的格式是下图这样的
只要将data里面的数据取出来再存放就可以了,可看下面的下面的代码样例
public function analysis($videoUrl)
{
try {
$url = "https://解析接口/Analyse?url=" . $videoUrl;
$s = file_get_contents($url);
$s = json_decode($s, true);
// 这个接口返回的状态码code 200表示解析成功
if ($s['code'] == '200') {
// 直接取返回数据中的data值再赋值给s,相当于s就是data
$s = $s['data'];
$reData = [
"title" => $s['title'], // 将分享文案存入 reData
"cover" => $s['cover'], // 将封面链接存入
"video" => $this->getUrl302($s['url']), // 将data中的视频链接存入,某些视频链接需要302跳转拿到真实链接才可以在小程序下载
];
// 如果你的解析接口可以解析图集,可再修改下面的代码
// 如果这个接口返回的type 等于image则表示正在解析图集链接返回的数据
// if ($s['type'] == 'image') {
// 存入图集
// $reData['images'] = $s['pics'];
// } else {
// 拿到真实链接并存入视频链接
// $reData['video'] = $this->getUrl302($s['url']);
// }
// 这里返回新的格式过去就可以了
return [
"code" => 200,
"data" => $reData, // reData 就是上面设置存入的数据
"msg" => "解析成功"
];
} else {
return [
"code" => -1,
"data" => null,
"msg" => $s['message']
];
}
} catch (\Exception $e) {
return [
"code" => -1,
"data" => null,
"msg" => "解析失败,出错了"
];
}
}
【上面那些看不懂的话再提供一个案例模板】
public function analysis($videoUrl)
{
$data = [
// 解析接口
'url' => 'http://apis.xiaofanmo.site/home/api?uid=这里填写UID&key=这里填写KEY&url=' . $videoUrl,
// 接口返回提示信息
'msg' => 'msg',
// 文案
'title' => 'desc',
// 封面
'cover' => 'cover',
// 图集
'images' => 'pics',
// 视频
'video' => 'playAddr',
];
try {
$url = $data['url'];
$s = file_get_contents($url);
$s = json_decode($s, true);
$whole = $s;
// 这个接口返回的状态码code 0001表示解析成功
if ($s['code'] == '0001') {
// 判断解析返回接口的数据是否在 data 里面
if (!empty($s['data'])) {
$s = $s['data'];
}
// 定义新的数据格式
$reData = [
"title" => $s[$data['title']], // 将分享文案存入 reData
"cover" => $s[$data['cover']] // 将封面链接存入
];
// 判断当前是否在解析视频
if (empty($s[$data['images']]) || $s[$data['images']] == "" || $s[$data['images']] == null) {
// 拿到真实链接并存入视频链接
$reData['video'] = $this->getUrl302($s[$data['video']]);
} else {
// 存入图集
$reData['images'] = $s[$data['images']];
}
// 这里返回新的格式过去就可以了
return [
"code" => 200,
"data" => $reData, // reData 就是上面设置存入的数据
"msg" => "解析成功"
];
} else {
return [
"code" => -1,
"data" => null,
"msg" => $whole[$data['msg']]
];
}
} catch (\Exception $e) {
return [
"code" => -1,
"data" => null,
"msg" => "解析失败,出错了"
];
}
}
“
问题解答区
问:进入小程序就弹出网络连接失败弹窗
答:前端的common.js文件中的域名和小程序id没修改正确
问:首次进入超级管理端登录弹出密码错误
答:数据库的数据没有导入进入,如是宝塔导入请用(宝塔导入用.sql)的文件
问:session_key 获取失败
① 检查小程序id和秘钥是否正确
② 微信公众平台小程序设置那里不要开启IP白名单
③ 如果绑定过微擎什么之类的需要去解绑
④ 检查域名和小程序id是否与后台的对应
问:搭建好后输入账号密码无法登录
前往超级管理端的后台登录页
网址:
http://域名/index.php?s=/admin/index/index
默认账号密码是:
admin
jumao123
如上面无法解决你的问题,请查看数据表admin_user中是否有数据,没有就自己重新导入一遍,或者自己创建一条数据。
10001,’admin’,’bf2df1b815ce5d541b7cc4309ba146e8′
问:提示使用权限已到期
覆盖最新版本的代码即可,群文件有
问:app.json文件错误
不要使用微信开发者工具直接打开源码,注意看教程,教程在群公告里
问:解析视频的时候报错
如果弹出类似以下报错的,或者解析视频失败的
Invalid argument supplied for foreacho
解决方案:
① 后台接口不要使用内置接口,这个接口时好时坏
② 检查使用第三方接口时修改的Apis.php文件是否修改正确
③ 如没有合适的第三方接口可使用群公告里的
问:网络连接失败
① 检查域名是否修改正确
② 检查是否已在微信公众平台添加合法域名
③ 检查域名是否已申请SSL证书
如果在微信开发工具中调试看到
net::ERR_SSL_PROTOCOL_ERROR
就是证书问题,直接百度搜这个报错就有解决方法
问:HB工具发布微信小程序失败
重新在manifest.json中的基础设置那里生成自己的APPID即可,就是点击重新获取按钮
问:弹窗提示小程序信息不存在
① 检查域名是否改对
② 检查小程序id是否与超级管理端的小程序id一致。
暂无评论内容