微信 Ubuntu个人服务器环境搭建

微信

一、什么是微信 ?

微信是腾讯公司于2011年初推出的一款可以发送图文信息,语音视频信息,支持多人语音对讲等功能的移动社交软件。用户还可以在朋友圈中和好友实时分享生活点滴。

作为时下最热门的移动社交平台,微信正在改变人们的沟通方式和生活方式。众多企业借助微信公众平台为用户提供了更加订制化和更创新的服务体验,用户则可以通过微信体验更便捷的移动互联网生活方式。

二、 微信公众账号分类

服务号、订阅号、企业号、小程序(node.js开发 免安装 功能少)

服务号、订阅号、企业号的介绍(区别):

a. 订阅号(个人):主要偏于为用户传达资讯(类似报纸杂志),认证前后都是每天只可以群发一条消息; 如早报/晚报 每天消息固定

b. 服务号:主要偏于服务交互(类似银行,114,提供服务查询),认证前后都是每个月可群发4条消息(银行调息 金价下跌等),查询一般是用户发起;需要工商营业执照 一般用测试帐号开发可实现大部分功能 支付除外(必须有营业执照)

c. 企业号(名存实亡):主要用于公司内部通讯使用,需要先有成员的通讯信息验证才可以关注成功企业号;钉钉打卡签到等...

 

 

三、拥有自己的微信公众账号

d. 微信公众平台官网 https://mp.weixin.qq.com

e. 每个邮箱仅能申请一种帐号:公众号或企业号

f. 个人只能申请微信订阅号

g. 个人的微信号要已经绑定了本人的银行卡

User:[email protected]  pass:XXXXX

扫码登录  帐号详情里面设置生成二维码  扫二维码关注公众号

 

四、公众号实现流程

 

五、服务器ubuntu xshell连接  (39.106.120.70  XXXXX XXXXX)

① 更新源版本 源地址(类似 yum 源)

apt-get update ---更新源

/etc/apt/sources.list文件中 配置的是 源地址 可以更改为阿里云等

 

② 安装语言包 配置语言兼容性

apt-get install language-pack-en-base

locale-gen en_US.UTF-8

 

③  安装 vim

apt-get install vim

④ 安装ngix apt-get install nginx

⑤ 查看当前安装的nginx版本  nginx -v (php等同理)

 

⑥ 启动Nginx服务  查看

 

 

⑦ Nginx配置文件  (显示行号 shift+: set nu)

 

⑧ 首先用命令检查是否安装了vsftpd

 

1) 如果未安装 apt-get install vsftpd 安装完成之后 再次使用vsftpd -v

2) 新建一个文件夹 用于FTP工作目录 mkdir /home/ftp

 

3) 新建FTP用户并设置密码以及工作目录 ftpname为创建的用户名

useradd -d /home/ftp -s /bin/bash ftpname

 

4) 为新建的用户 XXXXX创建密码 passwd XXXX

 

【注释: cat /etc/passwd可以查看当前系统用户】

5) 修改vsftpd.conf配置文件   vim /etc/vsftpd.conf

 

 

 

6) 保存返回 启动vsftpd服务 service vsftpd start

 

7) 资源管理器输入帐号 密码  ftp://39.106.120.70/   上面配置的 帐号密码(XXXX XXXXX)

 

FAQ:

a. 打开ftp服务器上的文件夹时发生错误,请检查是否有权限访问该文件夹"错误

200 Switching to Binary mode.

227 Entering Passive Mode(192,168,130,102,66,128)

553 Could not create file.

: FTP 数字代码的意义
110 重新启动标记应答。
120 服务在多久时间内ready
125 数据链路埠开启,准备传送。
150 文件状态正常,开启数据连接端口。
200 命令执行成功。
202 命令执行失败。
211 系统状态或是系统求助响应。
212 目录的状态。
213 文件的状态。
214 求助的讯息。
215 名称系统类型。
220 新的联机服务ready
221 服务的控制连接埠关闭,可以注销。
225 数据连结开启,但无传输动作。
226 关闭数据连接端口,请求的文件操作成功。
227 进入passive mode
230 使用者登入。
250 请求的文件操作完成。
257 显示目前的路径名称。
331 用户名称正确,需要密码。
332 登入时需要账号信息。
350 请求的操作需要进一部的命令。
421 无法提供服务,关闭控制连结。
425 无法开启数据链路。
426 关闭联机,终止传输。
450 请求的操作未执行。
451 命令终止:有本地的错误。
452 未执行命令:磁盘空间不足。
500 格式错误,无法识别命令。
501 参数语法错误。
502 命令执行失败。
503 命令顺序错误。
504 命令所接的参数不正确。
530 未登入。
532 储存文件需要账户登入。
550 未执行请求的操作。
551 请求的命令终止,类型未知。
552 请求的文件终止,储存位溢出。
553 未执行请求的的命令,名称不正确

 

解决方法:

解决办法(成功):设置IE浏览器>>Internet选项>>高级>>使用被动FTP(用于防火墙和DSL调制解调器的兼容)选项去掉>>确定即可

 

关闭selinux

修改/etc/vsftpd.conf

write_enable=YES

假设要上传这个目录是/home/ftp 

他的权限应该是770owner是用户名,groupuser

chmod 770 /home/ftp

chown 用户名:user /home/ftp

 

 

 

⑨ Nignx默认启动文件  vim /etc/nginx/sites-available/default

 

 

 


⑩ nginx配置文件中 vim /etc/nginx/sites-available/default 增加  index.php

 

⑪ ftp上传index.html 将文件从/home/ftp 移动到 /var/www/html下测试

 

 


FAQ:

上传文件权限不够 页面报403 forbidden

 

 

⑫ 安装php7.0-fpm  apt-get install php7.0

(拓展:安装这个php7是没有很多拓展的,需要自己再执行" apt-get -y install php7.0-扩展名(curl,mysql,gd等等)")

 

⑬ 安装php7扩展

apt-get install php7.0-curl/ php7.0-xml/php7.0-mcrypt/php7.0-json/php7.0-gd/ php7.0-mbstring /php7.0-dom /php7.0-zip/php7.0-mysql/php5-intl php-pear php5-imagick php5-imap

php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl...

Curl扩展:不刷新页面请求服务器 类似于php里面的ajax 代码执行到curl的时候 会生成另外一个线程 请求另一个服务器里面的内容

 

⑭ 查看当前环境 mysql安装包 apt-cache search mysql-server|grep "mysql-server"

 

⑮ 安装mysql   apt-get install mysql-server mysql-client

 

⑯ 连接数据库 查看是否安装成功 mysql -u root -p

 

⑰ 开启vsftpd服务 上传一张表 导入数据库测试 service vsftpd stop/start ftp://39.106.120.70

 

 

 


⑱ 修改配置文件

 

⑲ 在默认启动目录(/var/www/html) 新建php文件 测试

 

FAQ:

页面什么也不显示 ?  vim /etc/nginx/sites-available/default 增加配置如下再试试看

 

 

FAQ:

a. mysql密码忘记

1) 进入/etc/mysql目录下,然后sudo vim/vi debian.cnf查看里面的用户名和密码,然后使用这个文件中的用户名和密码进入mysql,假如debian.cnf中的用户名为debian-sys-maint,则:mysql -u debian-sys-maint -p按回车,这时需要你输入密码,复制debian.cnf中的密码(不要手动输入,因为容易产生错误)。

2) 修改root密码user   选库mysql  修改root密码  退出 用root用户登录

 

 

 


六、服务器环境告一段落  登录微信公众平台 https://mp.weixin.qq.com ([email protected] XXXXX) 扫码登录

 

七、 页面下方的开发  基本配置

1) 公众号开发信息

a) AppID  XXXXXXXXXXX

b) AppSecret XXXXXXXXXXX

c) IP白名单  39.106.120.70

 

2) 下载微信PC版测试用

 


 

3) 服务器配置 (参考开发者工具->开发者文档->开始开发->接入指南)

 

4) 编辑php代码 验证消息的确是来自于微信服务器

 

 

<?php

/*

微信公众平台 基本配置需要自己的服务器验证消息是否来自于微信服务器

微信服务器将发送GET请求到填写的服务器地址URL上,

GET请求携带参数如下表所示:

参数 描述

signature 微信加密签名,

signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数。

timestamp 时间戳

nonce 随机数

echostr 随机字符串

开发者通过检验signature对请求进行校验(下面有校验方式)。

若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,

则接入生效,成为开发者成功,否则接入失败。加密/校验流程如下:

1)将tokentimestampnonce三个参数进行字典序排序

2)将三个参数字符串拼接成一个字符串进行sha1加密

3)开发者获得加密后的字符串可与signature对比,标识该请求来源于微信

*/

$signature = $_GET['signature'] ;

$timestamp = $_GET['timestamp'] ;

$nonce = $_GET['nonce'] ;

$echostr = $_GET['echostr'] ;

//基本配置里面填写的token

$token = 'dongling13' ;

//排序

$arr = array($token,$timestamp,$nonce) ;

sort($arr) ;

//拼串  sha1加密 返回串

$str = implode($arr);

$str = sha1($str) ;

//signature比较  相同则返回echostr

if($str == $signature) {

echo $echostr ;

}

然后 微信公众平台 提交修改配置  启用

 

待续。。。

猜你喜欢

转载自blog.csdn.net/donglingjiu/article/details/80517425