本文原创首发CSDN,链接 https://blog.csdn.net/qq_41464123/article/details/105837646 ,作者博客https://blog.csdn.net/qq_41464123 ,转载请带上本段内容,尤其是脚本之家、码神岛等平台,谢谢配合。
前言:
相信点进这篇文章来看的你,一定是急着要完成备案。我先把备案成功结果盖楼,整篇文章就是为了帮大家完成备案。我整整花了40天才完成备案,一直都是审核失败被驳回,屡屡踩坑。
本文讲解服务器备案,首发在CSDN,是我亲身经历的结果,希望对大家有所帮助!
为什么要备案?
一般来说微信小程序需要前后端交互,小程序前台需要访问数据库,所以需要wx.request方法来对指定的URL地址请求数据,其中这个URL地址必须通过备案,所以我们需要对自己的云服务器备案,使得微信小程序能够正常访问数据库。
查看位置:微信公众平台(小程序)-----> 开发 -----> 开发设置 -----> 服务器域名
如何备案(以腾讯云为例)?
1.注册腾讯云账号,完成实名认证
我备案时所用的时间,给大家一个参考,下同(注册3分钟,实名认证个人1~2天,企业2~3天)
腾讯云官网:https://cloud.tencent.com/,注册一个自己的账号,并且完成实名认证。(一般建议邮箱注册,方便登入)
如果是个人,只需要身份证相关信息即可;
如果是企业、政府、事业单位、学校、组织等非个人机构,需要填写企业名称、营业执照(社会统一信用代码),另外需要对公打款认证。即TX给你开的银行账户转几分钱,然后在验证界面输入这个数额。
个人认证成功如下图所示:
企业政府等非个人机构,认证成功如下图所示:
2. 购买云服务器服务器
我备案时所用的时间,给大家一个参考(购买1分钟......exmmmmm)
具体价格可以参考腾讯云官网:https://cloud.tencent.com/。
选择自己需要的服务器购买,购买之后立即可以使用。
第二步以下步骤是服务器购买之后使用的教程,如果只需要备案,可以略过
买完之后,我们在自己的控制台中找到服务器
然后点击下图的登入按钮,下载RDP文件
我备案时所用的时间,给大家一个参考(下载RDP,2分钟)
下载之后就是这样子的一个文件(Windows系统),我们双击打开即可。账号密码可以在控制台修改。
服务器上部署Tomcat后,外网就可以通过服务器的公网IP地址加端口号访问到Tomcat主页,当然部署的项目也可以访问。
3.购买域名,并且完成实名认证
我备案时所用的时间,给大家一个参考(选择域名、购买域名,10分钟,实名认证个人1天,企业1~2天)
在 Internet 上有千百万台主机,为了区分这些主机,每一台主机都被分配一个的 IP 地址。但由于 IP 地址没有实际意义难于记忆,于是就有了域名(Domain Name)。而获得域名的方式是通过付费获得域名一年或多年内的使用权,我们称之为域名注册。
购买域名的地址:https://buy.cloud.tencent.com/domain?from=console
注意购买的域名要和自己正相关!在下面备案的时候,域名需要满足以下要求
- 网站备案域名的顶级域为通过国家批复的顶级域名。
- 网站备案域名需通过国家批复的域名注册服务机构进行注册管理(即境外注册商所注册的域名不能直接备案,需转入境内有资质的服务商,例如腾讯云)。
- 网站备案域名在域名注册有效期内(以域名 WHOIS 信息中的过期时间为准)。
- 网站备案域名为已通过实名认证的域名。
- 申请备案时填报的备案主体信息应与域名注册人实名认证信息相符。
购买之后,进行实名认证,个人就是个人认证,企业就是企业认证。需要准备的材料如下:
实名认证通过之后,就是这个样子,可以通过控制台看到
4.申请备案
我备案时所用的时间,给大家一个参考
备案提交后,腾讯云审核:早上提交一般第二天会处理好(处理指的是腾讯云给你打电话),过了中午一般需要第三天,周末不算工作日。
提交被驳回后再次提交,一般3小时~12小时处理好。
管局审核:3天左右(长三角这一带还是很快的),一般通过腾讯云审核,管局也能过
4.1为什么要备案?
根据国务院令第292号《互联网信息服务管理办法》和工信部令第33号《非经营性互联网信息服务备案管理办法》规定,国家对经营性互联网信息服务实行许可制度,对非经营性互联网信息服务实行备案制度。未获取许可或者未履行备案手续的,不得从事互联网信息服务,否则属于违法行为。因此,使用中国大陆境内的服务器开办网站必须先办理网站备案,备案成功并获取通信管理局下发的 ICP 备案号后才能开通访问。
备案的要求,每个省份都不一样,可以通过这里查询。比如浙江省的要求是这样的。
4.2 备案 —— “腾讯云网站备案” 小程序
如果该账号下没有云服务器,可以使用别人的云服务器,即使用备案授权码!
第一步是主体信息填写:包括省市区、详细地址、法人身份证信息、单位名称、社会统一信用代码证。
注意,域名实名认证完之后要三天之后,才能申请备案。当然你也可以先提交一次,看看除了域名之外有没有什么错误。腾讯云客服会一一指导你备案的全过程。
注意:
- 详细地址必须是精确到门牌号!
- 法人信息必须是社会统一信用代码证上写的负责人!
- 社会统一信用代码证必须是彩色扫描件,黑白的或者拍照无效!
- 身份证照片必须收集拍照,不能通过手机相册上传
如果是个人申请,只需要关于个人的相关信息即可,比如姓名,身份证,通讯地址,手机号码。
第二步是关于网站的信息,需要填写网站名称、网站用途、网站域名、网站负责人,且需要在网站内容中选择其他,在网站备注中写明做什么,一般来说只能写学习服务器的部署,搭建自己的博客(PS:这个是万能的)
注意:网站名称有讲究
- 非国家级单位网站名称不能包含“中国”、“中华”、“国家”、“人名”、“地名”等字样。
- 网站名称不能是纯数字、纯英文、不能包含特殊符号和敏感词汇(反腐、赌博等);个人网站名称不能以域名、姓名命名,不能包含公司、组织等类型的字眼。
- 网站名称要能体现网站的内容。
- 网站名称要求三个字以上(含三个字)。
如果是个人申请,网站名称要填写像 飞翔的小鸟 、 菜园的风采 等这样无意义的名称!不能涉及个人信息,也不能涉及企业组织信息,这只是在备案系统保存的名字,并不是域名打开后浏览器上显示的标题!如果是企业申请,网站名称要和企业正相关!
网站域名:必须是该腾讯云账号已经购买且通过实名认证的域名!
网站负责人:不一定要是法人,可以是法人授权的负责人(法人是社会统一信用证书上的负责人,网站负责人是法人授权的人)
第三步是上传材料
包括法人的身份证照片,网站负责人的视频核身,如果法人和网站负责任不是同一个人,还要法人对网站负责人的授权书(模版可从该页面下载,要盖章,彩色扫描)
个人的话只需要身份证和视频核身即可。
视频核身比较严格,后背必须是纯色背景,最好是白墙。如果马马虎虎拍一下,肯定通不过的,第一步就会被PASS掉!
另外着重强调!一些特殊企业,需要相关部分的前置审批!
比如你是XXXXX金融有限公司,你就必须要到人民银行或者相关部门开具许可证明!
如果涉及到上方领域的公司不填写相关许可证明,就会被PASS掉(见下图其他部分)
具体页面如下图所示:
接着就是提交审核,等待审核。不管是否通过,腾讯云都会给你打电话,确认是否你本人操作,如果不通过会告诉你改进方案,如果第一遍打不通,一个小时后会打第二遍,如果第二遍还是打不通,就会被退回。
未通过:
审核通过会提交到管局审核:
五:域名解析
我备案时所用的时间,给大家一个参考(域名解析,10分钟,部署主页,30分钟)
在腾讯云控制台 —— 域名管理中,对已通过实名认证的域名进行解析
选择快速添加解析即可,其中需要填写IP地址,就是云服务器的公网地址;填写的域名就是根域名即可。
解析之后,外网就可以通过域名访问该服务器了
具体做法:从github中随便下个html网页项目下来,放在云服务器下的 Tomcat\webapps\ROOT目录下,替换掉index.html / index.jsp即可。这样,我们访问域名,就直接可以访问到某个指定网页,而不是tomcat的主页。当然IP地址也一样可以访问!
六:申请SSL证书
我备案时所用的时间,给大家一个参考(申请SSL,2分钟;审核,20分钟)
因为微信小程序一定要HTTPS,即一定要加密协议,所以我们需要申请SSL证书,来满足微信小程序的需要。
选择免费证书即可,提交后会进入人工审核,我的是20分钟左右就通过了。
七:公安备案
我备案时所用的时间,给大家一个参考(备案审核,一般白天提交第二天处理,晚上提交第三天处理,周末除外)
您的网站备案申请通过管局审核并获得备案号后,您必须在网站开通后30日内进行公安备案。如果您的网站涉及经营性行为还需申请经营性网站备案许可证。公安备案审核通过后,您需在30日内登录 全国公安机关互联网站安全管理服务平台,在您的已备案网站详情中,复制网站公安机关备案号,下载备案编号图标,复制备案编号 HTML 代码,并编辑您的网页源代码。
公安备案网址:http://www.beian.gov.cn/portal/index
我们需要先注册一个账号
然后选择左方的新版网站申请,填写相关信息。
其中域名证书通过腾讯云控制台中的“域名管理”栏目下载。
第三步是填写网站负责人和应急负责人之类的,都填写一个人即可。
提交之后,会有审核,审核期间一定要保持网站能够正常访问,即云服务器的tomcat一定要一直开着。
审核通过之后,要把备案图标放在网站
就像下图这样的,放在网站最下面
完成之后,备案流程就算全部完成了。
八:部署项目
接下来我们需要把微信小程序的后台,部署到服务器上。
我们先从腾讯云控制台 的 SSL证书模块,下载私钥证书,然后把证书(压缩包内的Tomcat版本)放在服务器指定的位置
我们在服务器上安装一个IDE(比如eclipse,当然也可以直接把部署好的文件拷贝过去)
打开项目的web.xml,在后面加一段代码,目的是配置HTTPS。
<login-config>
<auth-method>CLIENT-CERT</auth-method>
<realm-name>Client Cert Users-only Area</realm-name>
</login-config>
<security-constraint>
<web-resource-collection>
<web-resource-name>SSL</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
在IDE中导入,跑一次
再打开Tomcat\conf\server.xml 的约60~70行的地方,将下面一行代码
<Connector connectionTimeout="20000" port="443" protocol="HTTP/1.1" redirectPort="8443"/>
替换成:
<Connector connectionTimeout="20000" port="443" protocol="HTTP/1.1"
redirectPort="8443" SSLEnabled="true" clientAuth="false" keystoreFile="C:/Tomcat8.5/conf/ypcqmm.net.jks"
keystorePass="qmm_xsh_1974" maxThreads="150"
scheme="https" secure="true" sslProtocol="TLS"/>
先使用IDE跑起来,只要你自己电脑上能成功运行,在这里打不开没有关系。我们只需要IDE把这个项目部署到Tomcat目录下就可以了。
接着关闭IDE中的Tomcat,使用Tomcat自带的运行工具,跑起来。
跑起来之后,稍等1分钟,外网就可以通过域名/项目名访问到部署的项目了。
以下是我自己写的某个demo,部署上去之后,外网就可以跑起来了。
备案不易,回想起我备案的那些时候,真是痛苦,一次次的提交,一次次的被驳回。
希望能帮到大家,如果其中有流程讲解的不够详细的话,欢迎下方评论区留言,必回解答!