小程序模板網(wǎng)

微信小程序:自行部署 Wafer 的一點(diǎn)心得

發(fā)布時(shí)間:2017-12-16 14:59 所屬欄目:小程序開發(fā)教程

最近以官方的 demo 為例配置部署 wafer,實(shí)現(xiàn)了小程序的授權(quán)登陸、獲取用戶信息以及小程序 websocket 聊天室功能。這個(gè)過程中踩了幾個(gè)小坑,特分享出來,讓 ...

 
 
 

一、準(zhǔn)備工作

  • 服務(wù)器:服務(wù)器環(huán)境centOS 6.8 + php7 + nginx/1.9.10

  • wafer SDK代碼,以官方demo為例 下載

  • 提供會(huì)話服務(wù)的代碼 下載

  • 客戶端小程序demo代碼 下載

二、配置文件

1. 配置以支持https訪問

如何配置免費(fèi)的https,自行百度

2. 配置wafer的SDK配置文件sdk.config

新建個(gè)文本文件粘貼如下代碼:

{
    "serverHost": "www.xx.com",
    "authServerUrl": "http://www.xx.com/itjaye/wafer-session-server/",
    "tunnelServerUrl": "https://ws.qcloud.com",
    "tunnelSignatureKey": "xxxxxx",
    "networkTimeout": 30000
}
  • serverHost 你的業(yè)務(wù)服務(wù)器的域名,上面部署wafer SDK代碼
  • authServerUrl 會(huì)話服務(wù)地址,登陸授權(quán)會(huì)用到。上面部署會(huì)話服務(wù)的代碼
  • tunnelServerUrl 這個(gè)是信道服務(wù)器地址,不需要部署,直接使用騰訊提供的信道服務(wù)器地址https://ws.qcloud.com
  • tunnelSignatureKey 修改成自己的簽名秘鑰,隨便自己定義一個(gè)就行

將文件保存為sdk.config并上傳到/etc/qcloud/sdk.config (需要在/etc/下面自己創(chuàng)建下qcloud這個(gè)目錄)

3. 配置會(huì)話服務(wù)調(diào)用的數(shù)據(jù)庫連接配置文

上線前需要在服務(wù)器如下配置

a.在數(shù)據(jù)庫中創(chuàng)建cAuth數(shù)據(jù)庫并導(dǎo)入根目錄下的mina_auth/db.sql

b.修改wafer-session-server/system/db/db.ini代碼

[db]
host = 數(shù)據(jù)庫服務(wù)器IP
port = 3306
user_name = 用戶名
pass_wd = 密碼
data_base = cAuth

4. 配置小程序管理平臺(tái)

登陸微信小程序管理平臺(tái)https://mp.weixin.qq.com/ 在 『設(shè)置』-『開發(fā)設(shè)置』 里添加如下url

wss://ws.qcloud.com、https://ws.qcloud.com

5. 配置客戶端代碼

修改下客戶端demo中的/config.js的host為你的業(yè)務(wù)服務(wù)器上wafer SDK地址

var host = 'www.xx.com/itjaye/wafer-php-server-demo';

6. 配置wafer-php-server-demo

針對(duì) wafer-php-server-demo代碼,記得先在該文件夾下執(zhí)行composer install操作來安裝wafer SDK

需要分配配置下SDK本身所采用的CI框架來支持偽靜態(tài),隱藏index.php

修改代碼中application/config/config.php里的配置 修改26行為

    $config['base_url'] = 'https://www.xx.com/itjaye/wafer';

修改38行為

    $config['index_page'] = '';

同時(shí),在Nginx服務(wù)器的配置文件中增加如下設(shè)置以支持ci框架的偽靜態(tài)

location /itjaye/wafer/ {
			index  index.html index.php;
			if (!-e $request_filename) {
				rewrite  ^(.*)$  /tjaye/wafer/index.php?s=$1  last;
				break;
			}
        }

三、上傳代碼

在服務(wù)器上web根目錄下創(chuàng)建一個(gè)文件夾,我的文件夾名為itjaye,把上面wafer-php-server-demo文件夾和wafer-session-server文件夾上傳到該文件夾下即可。

四、其他問題

針對(duì)會(huì)話服務(wù)由于是php7 需要如下修改,

  • mysql 的函數(shù)換成mysqli支持,修改方法可以參考

  • 采用function __construct 構(gòu)造函數(shù)來替換和類名相同的函數(shù)名

五、參考資料

https://github.com/tencentyun/wafer/wiki


易優(yōu)小程序(企業(yè)版)+靈活api+前后代碼開源 碼云倉庫:starfork
本文地址:http://u-renovate.com/wxmini/doc/course/18183.html 復(fù)制鏈接 如需定制請(qǐng)聯(lián)系易優(yōu)客服咨詢:800182392 點(diǎn)擊咨詢
QQ在線咨詢