文章分类: 其他技术研究

网站建设碰到的其他问题和解决方案归档

微信内H5页面分享接口以及微信登录接口在服务号内的设置

几个月前公众号后台做过一系列更新,很多设置的位置都调整了。这里重新整理一下微信服务号如何开通H5页面的分享以及登录接口(OAuth2.0网页受权获取用户基本信息)设置:

1. 登录服务号后台。

2. 在左侧菜单中找到“公众号设置”,进入“功能设置”。
在“JS接口安全域名”和“网页授权域名”中设置H5页面所在的域名
在左侧菜单中找到“公众号设置”,进入“功能设置”
查看详细 »

解决阿里云用LNMP在某些时候FTP无法使用的问题

今天在咖啡厅办公,发现一台在家里和公司都能正常使用的阿里云主机无法用FTP列目录了,当然上传文件也是不能了,其症状是可以正常登录,但到了列目录的时候就卡住:
解决阿里云用LNMP在某些时候FTP无法使用的问题

碰到这种服务器问题还是只能采用搜索大法,先去LNMP论坛兜了一圈,大致可以确认的是防火墙问题,建议开放端口20000-30000,然后换成被动模式登录。
开放端口命令:

iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 20000:30000 -j ACCEPT

照做后发现能列出根目录,但要进入任何子目录后FTP又卡住了,感觉是不是还有另外一道无形的墙把我阻隔了?突然灵光一现,记得阿里云后台有个安全组和iptables有着差不多的作用,那边还没有开放这个端口段,可以一试 查看详细 »

一次解决LNMP主机反复宕机问题的记录

新购的一台阿里云主机,几乎每天都会发生MySQL自动停止服务。主机其他部分看来运行都正常,怀疑是哪里设置的不对,但我装完这台LNMP改的默认设置不多,之前也并没有碰到过类似的问题。既然是MySQL停止服务,那么就从MySQL这里找问题,搜索了一个多小时,发现MySQL宕机有很多可能性,一时无法确定。但解决此类问题的关键都是查看错误日志开始。

命令行进入本地MySQL,之后输入密码

mysql -hlocalhost -uroot -p

之后进入提示符mysql>

查看错误日志的位置

mysql> show variables like '%log_error%';

此时获取到了文件位置。查看日志后,发现大部分重复片段是这样的:

2017-07-26 04:34:03 7617 [Note] Plugin 'FEDERATED' is disabled.
2017-07-26 04:34:03 7617 [Note] InnoDB: Using atomics to ref count buffer pool pages
2017-07-26 04:34:03 7617 [Note] InnoDB: The InnoDB memory heap is disabled
2017-07-26 04:34:03 7617 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2017-07-26 04:34:03 7617 [Note] InnoDB: Memory barrier is not used
2017-07-26 04:34:03 7617 [Note] InnoDB: Compressed tables use zlib 1.2.3
2017-07-26 04:34:03 7617 [Note] InnoDB: Using CPU crc32 instructions
2017-07-26 04:34:03 7617 [Note] InnoDB: Initializing buffer pool, size = 128.0M
InnoDB: mmap(137363456 bytes) failed; errno 12
2017-07-26 04:34:03 7617 [ERROR] InnoDB: Cannot allocate memory for the buffer pool
2017-07-26 04:34:03 7617 [ERROR] Plugin 'InnoDB' init function returned error.
2017-07-26 04:34:03 7617 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2017-07-26 04:34:03 7617 [ERROR] Unknown/unsupported storage engine: InnoDB
2017-07-26 04:34:03 7617 [ERROR] Aborting

查看详细 »

创业公司预算不高,要做网站,找什么样的人最好?

经常听到有人会讨论这类问题 – 作为一家创业公司,没有专人做网站,应该找什么样的人外包网站建设?

一家公司决定要建网站时,他们一般会有这3种选择:

  1. 找建站平台生成网站,自己维护或者购买平台的维护服务
  2. 找广告公司/建站公司服务
  3. 找自由职业的个人或小团队建站

创业公司预算不高,要做网站,找什么样的人最好?
下面我来分析以上各选项的利弊 查看详细 »

用Symantec免费DV SSL证书给网站上绿标,实现全站HTTPS

花了半天时间给本博客实现了全站HTTPS,在各浏览器地址栏里的效果图:
实现全站HTTPS

用的是Symantec的免费DV SSL证书,完成后还是挺有成就感的。HTTPS对个人网站的意义在于可以防止各种DNS劫持,我就碰到过,可以看看这篇文章。如果你的网站开启了电商模式,或者存在敏感的用户数据交互,倒是建议花钱购买一下高级别的证书,增强一下网站的安全性,也可以稍微增加一些用户的安全感。

稍稍记录一下实现过程 查看详细 »

微信OAuth2.0网页受权获取用户基本信息同时获取关注公众号的状态

最近一个项目涉及到一些微信方面的开发,填了一个小坑。采用OAuth2.0网页受权获取的用户基本信息是不需要事先关注公众号的,但有时候我们又需要知道用户是否关注公众号的状态,如果没有关注,则鼓励提示用户关注。

我们知道要获取用户的关注状态,应该用普通接口
https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID
要获得其中的ACCESS_TOKEN,事先用普通接口获得
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
而OPENID则是通过关注该公众号,通过菜单或自动回复等方式获得的。但是如果用户没有关注该公众号,就没有途径赋予他OPENID

而用OAuth2.0网页受权可以在不关注公众号的前提下就获得OPENID,但同时获得的ACCESS_TOKEN却是不能在普通接口使用的。因此解决问题的钥匙就是用普通接口获取一次ACCESS_TOKEN,再用OAuth2.0网页受权获取OPENID,最后再用普通接口获取用户的关注状态以及基本信息(绕个大圈子)。 查看详细 »

LNMP1.2下安装Pureftpd Web管理界面登陆报错502的解决方法

这两天用LNMP1.2安装了一台阿里云主机,照着以前安装LNMP1.1的步骤按部就班的安装下来,大致顺利,但也碰到了个新的问题,装完Pureftpd后,发现无法用web方法登陆了。打开http://[ip]/ftp目录可以访问到登陆界面,但输入正确的密码后页面就停止响应,有时候给出502报错,有时候干脆什么也不显示。最后搜索到解决方法:

在web目录中新建一个.user.ini文件

 vi /home/wwwroot/default/ftp/.user.ini

然后加入一行代码:

open_basedir=/home/wwwroot/default:/tmp/:/proc/:/etc/

保存后,即可正常登陆Web管理界面了。

解决Linux的pureFTPd默认在FTP客户端每个目录最多只显示1998个文件的问题

今天在一个图库项目中发现无论在FTP里上传多少个文件,每个文件夹最多只能列出1998个文件,其余的则全部“消失”。上服务器查看还好文件都在,于是猜想应该是FTP设置的问题。Google了一下很快找到解决方法,记录一下。
解决Linux的pureFTPd默认在FTP客户端每个目录最多只显示1998个文件的问题 查看详细 »

我的云主机使用经验 – 三家云主机服务商(包括阿里云)的对比

从2013年开始,各家主机供应商都推出了云主机服务。什么是云主机?简单来说就是一台你“看不见,摸得着”的主机。“看不见”指如果你跑去机房,你是找不到自己的那台实体主机的。“摸得着”指你可以像登录实体主机一样远程登录你的云主机,并且进行几乎任何实体主机一样的操作。而最最重要的,是云主机的费用一般只有实体主机的10%。而且你完全不用担心云主机的性能问题,和实体主机一样,用程序探针可以看到自己主机的配置,不用担心主机商骗你。

那么问题是,现在网络上的云主机供应商已经多如牛毛,我要怎么选?
各家都会找一些枪手,写一些软文,发一些广告,究竟孰优孰劣,和我一样,你也一定迷惑过。 查看详细 »

IIS服务器无法播放MP4/FLV/3GP等媒体格式的问题

这个问题其实和之前遇到过的IIS服务器上无法识别svg/woff/woff2字体一样,都是IIS没有注册MIME类型导致的。解决方法也一样,先确认文件已经上传并且路径配置正确,然后远程登录主机,打开IIS,找到网站,右键属性,打开“HTTP头”,找到右下角的“MIME类型…”,添加对应的MIME类型即可:

.3gp 3gp video/3gpp
.flv application/octet-stream
.mp4 application/octet-stream

IIS服务器无法播放MP4/FLV/3GP等格式的问题 查看详细 »

第 1 页,共 3 页123