微信小程序分享——会话服务器和业务服务器合并

云服务器列表

到期啦!!!!

文件迁移

因为两台服务器的镜像是不同的,里面的环境也不同。业务服务器是nginx+php-fpm的环境,而会话服务器是LAMP (Apache)。

首先把登录会话服务器,把文件传到业务服务器来。

会话服务器(172.16.0.15) /opt/lampp/htdocs/mina_auth 迁移到 ->业务服务器(172.16.0.8) /data/release/session-wafer/mina_auth
[root@VM_0_15_centos htdocs]# pwd/opt/lampp/htdocs[root@VM_0_15_centos htdocs]# lsmina_auth  update_mina.sh[root@VM_0_15_centos htdocs]# tar czvf session.tar.gz mina_auth

打包完成之后,把文件通过scp复制过去。

scp /opt/lampp/htdocs/session.tar.gz root@172.16.0.8:/data/release/

文件复制

然后,登录业务服务器

停掉php-fpm服务,命令: kill -QUIT cat /run/php-fpm/php-fpm.pid

停掉nginx服务,命令: nginx -s stop

解压session.tar.gz命令:tar xzvf session.tar.gz

把mina_auth创建到正确的目录下面。

设置nginx

因为业务服务器已经跑在了80端口,因而我们现在把会话服务器配置到8080端口会更加合理。所以我们是让一个nginx同时支持多个端口。

默认nginx有两个配置文件

  • /etc/nginx/nginx.conf 这个是主配置文件,打开查看可以发现在末端它引用了目录 /etc/nginx/conf.d 里面的所有配置文件;
  • /etc/nginx/conf.d/php-weapp-demo.conf 这个是80端口的业务服务器的配置;(我个人把它改了名字 application-wafer.conf)

把application-wafer.conf复制一份,起名为session-wafer.conf,并修改下面的内容。

这个时候,似乎掺的配置都修改完成了,但是还不能运行起来的,必须在程序上做一些修改。特别是加解密部分,可是花了赞哥成天的时间找出来。

修改小程序sdk配置

位置: /etc/qcloud/sdk.config

把这个地址改成你业务服务器本机的地址。如,我从 172.16.0.15 变成了 172.16.0.8:8080

修改解密算法

为这个问题我找了一天时间,非常郁闷。

位置:/data/release/session-wafer/minaauth/system/wxdecrypt_data/new/pkcs7Encoder.php

问题描述:

在会话服务器里,mcrypt插件是已经随LAMP安装了的,而在业务服务器,并没有这个插件。请看下面的phpinfo。(你需要在php.ini里面把phpinfo生产才能查看)

会话服务器里mcrypt是enabled的 原来打算在业务服务器上安装mcrypt插件,但是查看php的官网,特别是php 7.1后,mcrypt是特别不建议使用的,其可以用openssl替代。

$decrypted = openssldecrypt(aesCipher,′aes−128−cbc′,this->key, OPENSSLRAW_DATA, $aesIV);

修改后的效果为:

重新启动服务器

启动nginx和php-fpm,直接高点命令nginx和php-fpm

启动两个服务

测试工作

curl http://localhost/ curl http://localhost:8080/mina_auth/

注意:8080端口是默认不能通过外网访问进来的,只能通过VPC内网。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏沈唁志

怎么快速集成QQ微博等第三方授权登录功能?

日常项目中经常会用到QQ授权登录或者微信授权登录,方便了用户,否则需要手机验证码等等的操作,授权登录只需要一键操作

1111
来自专栏深度学习之tensorflow实战篇

#!/bin/bash 与#!/bin/sh

hive脚本如下(日表): #!/bin/bash #     /*% ******************************************...

3015
来自专栏生信宝典

原来你是这样的软连接

1123
来自专栏Hongten

Struts2 HelloWorld_1

解压后,在apps文件夹下面有5个*.war文件,解压struts2-blank.war文件

961
来自专栏小明plus

在2018年如何优雅的开发一个typescript语言的npm包?

很多时候,我们可能想要用 typescript 语言来创建一些模块,并提交到 npm 供别人使用,

1.2K10
来自专栏北京马哥教育

Linux系统命令和使用技巧8则

我们在平时使用 Linux 系统时,无论在终端下还是在图形桌面下,都有一些快捷的命令和操作的技巧,本文就向新手简单介绍常用的几种: 1、处理特殊的文件名 假设L...

4148
来自专栏.NET技术

经典SQL语句大全之基本函数

1,datalength(Char_expr) 返回字符串包含字符数,但不包含后面的空格 2,substring(expression,start,length...

1402
来自专栏熊二哥

Linux快速入门02-文件系统管理

继续进入Linux文件系统的学习,加油,早日突破MS压在自己身上的那道束缚。 ? ? 文件属性基本概念:文件所有者,文件组,其他人。 ? 对上图来说,-rw-...

2158
来自专栏python3

django组件--cookie与session

在一个会话的多个请求中共享数据,这就是会话跟踪技术。例如在一个会话中的请求如下: 请求银行主页; 

1865
来自专栏Android相关

Linux--分区与挂载

整个磁盘的存储大小为: 存储容量 = 磁头数 × 磁道(柱面)数 × 每道扇区数 × 每扇区字节数

4662

扫码关注云+社区

领取腾讯云代金券