令人厌烦的支付宝改版

在面向普通用户的app,阿里已经被吐槽和很多次,每次改版都把app界面改的面目全非。

吐槽一下面向开发者也是如此。

我原本是寻找签约“批量付款到账户”的入口。原本的界面应该是这样的:

在产品商店里就可以找得到了。然而现在的界面是这样的:

应该是图上的那个地方签约吧,满怀期待地进去之后,顿时傻了。。。。

又各种乱找一番,还是找不到。。。。。

最后还是放弃了,直接谷歌吧

总之签约完成就ok了。

下面是一些开发过程中的问题,记录一下。

ILLEGAL_PARTNER_EXTERFACE 错误

没有权限访问该服务

有以下的几种原因: 1、没有签约这个接口的合同。 2、签约了相应的接口合同,但没有生效。 3、签约了相应的接口合同,但由于违规违法等原因被审核部门强制关闭。

出现这种情况最常见的原因是: 接口用错。如,签约的是担保交易的接口合同,商户网站上使用的却是双功能-担保/即时;签约的是担保交易的接口合同,商户网站上使用的却是即时到帐。

批量付款申请提交失败,付款账号不存在

提交的请求的账号参数有问题。

解决方案:

确认在渠道参数中填写的信息,与当前支付宝账号中的信息完全一致,特别是邮箱、账户名称等,需要完全一致才可以。

申请提交失败,证书有误,无法复核批次记录

支付宝批量付款需要安装数字证书,未安装数字证书导致的。

解决方案:

安装 “支付宝数字证书”


一些云服务器推荐

作为软件工程师,尤其是后端开发工程师,多多少少都有接触过云服务器。也有很多刚入门的小鲜肉们好奇应该怎么入门选择云服务器。这一篇我推荐一些接触过的云服务器。

另外关于云服务器和虚拟主机、vps的区别,这里我不做过多区分。想进一步了解的可以百度一下。

强烈推荐: linode

vps中的高富帅,在美国、德英国、新加坡、日本共有9处机房位置,非常稳定。换过下文好多家,最终还是用了 linode。 使用上面的链接注册,你可以获得20刀的优惠券。

国外

国外云主机的好处在于不需要备案即可搭建网站。国内的云主机也可以用,未备案的情况下往往是把80端口封禁起来的,比如 aws 和 阿里云。

  1. 阿里云国际版 三网体验好。贵。真心贵。新用户有优惠券20刀。 只能用国外信用卡或者 paypal 绑定,需要有国外手机号。不接受国内信用卡。

  2. Digital Oceanvps服务商,新贵,刚出来的时候还蛮良心的,现在不太给力了,延迟有点高。

  3. heroku 严格来说这个并不是云服务器,而是一个与 GAE 类似的 PaaS 服务。服务器并不在你的手上,你可以上传 php 代码然后让他自动运行。注册后绑定信用卡,每个月就可以在最小费用内使用1000小时,相当于免费。(注意不要超限,很贵的

  4. 亚马逊AWS 免费体验一年。还是蛮良心的,不过也是慢。当时不小心超额了扣了我3美元,和客服抱怨之后客服给我返还了5美元。也是蛮好的。国内访问速度慢+1。国内机房需要备案。

  5. 微软Azure 注册送200刀,期限30天,同样需要信用卡验证,不授权不会自动扣款。直接说结论,不好用。

  6. Vultr 又一个vps服务商,没用过,经常听到。

  7. 樱花vps 日本线路王牌。注册很麻烦,还需要日本住址,又全是日文,看看而已就没深入研究了。据说 ping 值常年在 80ms 左右,算是很好的了。

  8. 搬瓦工 便宜,没用过,经常听到。

国内

国内云主机的访问速度快,但是如果对外访问的话,域名需要备案。

  1. 阿里云 国内性价比比较高的服务器了。从域名备案到建站,一条龙服务,要什么有什么。出的事故,不多不少吧。挖电缆什么的断网这种事情都能遇上。

  2. 青云 国内高富帅云服务器厂商,CEO 都是海归派。技术还是可以信赖的。除了贵。稳定性不错。今年17年北京机房出了一起事故,其它好像没什么问题了。

  3. 腾讯云 前段时间的腾讯云1分钱竞标的新闻还是蛮有效果的。我没有用过,感觉还是贵。

  4. Ucloud 最近故障和负面消息不少。没用过。


谷歌人机验证 reCAPTCHA 的解决办法

首先声明这个不是破解谷歌 reCAPTCHA 的意思Orz

当前世界范围的IPv4地址紧张,运营商给自家用户常常分配同一个IP上网(这句可以无视666)。在这种情况下访问谷歌搜索,容易被谷歌 reCaptcha 误伤识别成疑似机器人。这篇文章讨论如何避免这种情况。

接下来是正文

以前进行谷歌搜索的时候,都是很正常的。最近服务器发生了一些变动,在地址栏直接输入关键字搜索,就跳出了人机验证的界面,如下图

第一次遇到只要点击窗口就没有问题了,心里还感叹了下谷歌能把人机验证这事做的这么好,不错。然而这个窗口还是会不断调出来扰人= =

次数多了之后 Google 还会弹出一个窗口,要求输入传统的验证码或者跳出阿猫阿狗汽车的图片让你选择。

关于谷歌人机验证的详细新闻,可以看雷锋网的这篇文章——《与恼人的验证码说拜拜,Google用一次点击区分人与机器》。我猜测这是多人公用同一个谷歌搜索的站点引起的问题。Google reCaptcha 功能会在收集大量信息,包括IP地址和cookies,然后通过收集这些数据对比用户是否和过去在互联网上的行为一致,来判定这个用户究竟是不是机器人。

在好基友的帮助下我找到了一个折中解决的办法。简单说来就是新建一个搜索引擎,指定想要的搜索地址就好(最好避开与你共用一条线路的用户访问的谷歌搜索的站点——主站.com,香港.hk和日本.co.jp这一类)。下面是具体的步骤:

1 访问 <google.com/ncr>,随便搜索一个关键字。(ncr=no country redirect不做国家跳转) 2 修改浏览器默认搜索引擎。下面以 Chrome 为例:

打开设置

管理搜索引擎

自定义搜索引擎,并且设为默认搜索引擎

将自定义搜索的地址改成各种天花乱坠的谷歌 + /search?q=%s ,比如

亚洲:

蒙古 google.mn蒙古语
韩国 google.co.kr 韩语
日本 google.co.jp 日语
越南 google.com.vn 越南语
老挝 google.la 老挝语
柬埔寨 google.com.kh 高棉语
泰国 google.co.th 泰语
马来西亚 google.com.my 马来语
新加坡 google.com.sg 马来语
文莱达鲁萨兰国 google.com.bn 马来语
菲律宾 google.com.ph 菲律宾语
印度尼西亚 google.co.id 印尼语
东帝汶 google.tp 葡萄牙语
哈萨克斯坦 google.kz 哈萨克语
吉尔吉斯斯坦 google.kg 吉尔吉斯语
塔吉克斯坦 google.com.tj 塔吉克语
乌兹别克斯坦 google.co.uz 乌兹别克语
土库曼斯坦 google.tm 土库曼语
阿富汗 google.com.af 波斯语
巴基斯坦 google.com.pk 乌尔都语
尼泊尔 google.com.np 尼泊尔语
印度 google.co.in 英语
孟加拉国 google.com.bd 英语
斯里兰卡 google.lk 僧伽罗语
马尔代夫 google.mv 马尔代夫语
科威特 google.com.kw 阿拉伯语
沙特阿拉伯 google.com.sa 阿拉伯语
巴林 google.com.bh 阿拉伯语
阿联酋 google.ae 阿拉伯语
阿曼 google.com.om 阿拉伯语
约旦 google.jo 阿拉伯语
以色列 google.co.il 阿拉伯语
黎巴嫩 google.com.lb 阿拉伯语
土耳其 google.com.tr 土耳其语
阿塞拜疆 google.az 阿塞拜疆语
亚美尼亚 google.am 亚美尼亚语英语
莱索托 google.co.ls 莱索托语

欧洲: 欧洲:

冰岛 google.is英语
丹麦 google.dk 丹麦语
挪威 google.no 挪威语
瑞典 google.se 瑞典语
芬兰 google.fi 芬兰语
爱沙尼亚 google.ee 爱沙尼亚语
拉脱维亚 google.lv 拉脱维亚语
立陶宛 google.lt 立陶宛语
爱尔兰 google.ie 爱尔兰语
英国 google.co.uk 英语
根西 google.gg
泽西 google.je
马恩 google.im
法国 google.fr 法语
荷兰 google.nl 荷兰语
比利时 google.be 荷兰语
卢森堡 google.lu 德语
德国 google.de 德语
奥地利 google.at 德语
瑞士 google.ch 德语
列支敦士登 google.li 德语
葡萄牙 google.pt 葡萄牙语
西班牙 google.es 西班牙语
直布罗陀 google.com.gi 西班牙语
安道尔 google.ad 法语
意大利 google.it 意大利语
马耳他 google.com.mt 马耳他语
圣马力诺 google.sm 意大利语
希腊 google.gr 希腊语
俄罗斯 google.ru 俄语
白俄罗斯 google.com.by 白俄罗斯语
乌克兰 google.com.ua 乌克兰语
波兰 google.pl 波兰语
捷克 google.cz 捷克语
斯洛伐克 google.sk 斯洛伐克语
匈牙利 google.hu 匈牙利语
斯洛文尼亚 google.si 斯洛文尼亚语
克罗地亚 google.hr 克罗地亚语
波黑 google.ba 塞尔维亚语
黑山 google.me 黑山语
塞尔维亚 google.rs 塞尔维亚语
马其顿 google.mk 马其顿语
保加利亚 google.bg 保加利亚语
罗马尼亚 google.ro 罗马尼亚语
摩尔多瓦 google.md 摩尔多瓦语

非洲: 非洲:

埃及 google.com.eg 阿拉伯语
利比亚 google.com.ly 阿拉伯语
阿尔及利亚 google.dz 阿拉伯语
摩洛哥 google.co.ma 阿拉伯语
塞内加尔 google.sn 法语
冈比亚 google.gm 英语
马里 google.ml 法语
布基纳法索 google.bf 法语
塞拉利昂 google.com.sl 英语
科特迪瓦 google.ci 法语
加纳 google.com.gh 英语
多哥 google.tg 法语
贝宁 google.bj 法语
尼日尔 google.ne 法语
尼日利亚 google.com.ng 英语
圣赫勒拿 google.sh 英语
喀麦隆 google.cm 法语
乍得 google.td 阿拉伯语
中非 google.cf 法语
加蓬 google.ga 法语
刚果(布) google.cg 法语
刚果(金) google.cd 法语
安哥拉 google.it.ao 葡萄牙语
埃塞俄比亚 google.com.et 安哈拉语
吉布提 google.dj 阿拉伯语
肯尼亚 google.co.ke 英语
乌干达 google.co.ug 英语
坦桑尼亚 google.co.tz 英语
卢旺达 google.rw 卢旺达语
布隆迪 google.bi 布隆迪语
马拉维 google.mw 契瓦语
莫桑比克 google.co.mz 葡萄牙语
马达加斯加 google.mg 马尔加什语
塞舌尔 google.sc 英语
毛里求斯 google.mu 英语
赞比亚 google.co.zm 英语
津巴布韦 google.co.zw 英语
博茨瓦纳 google.co.bw 茨瓦纳语
纳米比亚 google.com.na 南非荷兰语
南非 google.co.za

大洋洲:

澳大利亚 google.com.au 英语
诺福克岛 google.com.nf 英语
新西兰 google.co.nz 英语
所罗门群岛 google.com.sb Pidgin
斐济 google.com.fj 印地语
密克罗尼西亚 google.fm 英语
基里巴斯 google.ki 吉尔伯特语
瑙鲁 google.nr 瑙鲁语
托克劳 google.tk 英语
萨摩亚 google.ws 英语
东萨摩亚 google.as 萨摩亚语
汤加 google.to 英语
纽埃 google.nu 纽埃语
库克群岛 google.co.ck 毛利语 法语
多米尼加 google.com.do 西班牙语
特立尼达和多巴哥google.tt
哥伦比亚 google.com.co 西班牙语
厄瓜多尔 google.com.ec 西班牙语
委内瑞拉 google.co.ve 西班牙语
圭亚那 google.gy 英语
秘鲁 google.com.pe 西班牙语
玻利维亚 google.com.bo 西班牙语
巴拉圭 google.com.py 西班牙语
巴西 google.com.br 葡萄牙语
乌拉圭 google.com.uy 西班牙语
阿根廷 google.com.ar 西班牙语
智利 google.cl 西班牙语

美洲:

格陵兰 google.gl 格陵兰语
美国 google.com 英语
墨西哥 google.com.mx 西班牙语
危地马拉 google.com.gt 西班牙语
伯利兹 google.com.bz 英语
萨尔瓦多 google.com.sv 西班牙语
洪都拉斯 google.hn 西班牙语
尼加拉瓜 google.com.ni 西班牙语
哥斯达黎加 google.co.cr 西班牙语
巴拿马 google.com.pa 西班牙语
巴哈马 google.bs 英语
古巴 google.com.cu 西班牙语
牙买加 google.com.jm 英语
海地 google.ht

Safari

特别的,针对于 Mac 用户以及 Safari 蛋疼的尿性——没办法自定义搜索引擎,可以通过插件『Clean Links for Google』达到不再重定向、直达.com的作用。

当然,要使得这个插件生效,你同样需要先访问 <google.com/ncr> 。再接下来地址栏搜索,就会直达 .com 网站啦。

参考资料


linux命令列表

一. 启动,关机,登入,登出相关命令

[login] 登录

[logout] 登出

[exit] 登出

[shutdown] 停止系统

[halt] 停止系统

[reboot] 重启动

[poweroff] 切断电源

[sync] 把内存里的内容写入磁盘

[lilo] 安装lilo启动管理程序

[grub] 安装lilo启动管理程序

二. Shell相关命令

[chsh] 切换Shell

[history] 显示命令履历

[alias] 设置命令别名

[unalias] 取消命令别名

[which] 显示命令所在位置

[type] 查询命令种类

[echo] 显示字符串或者变量内容

[set] 设置/显示Shell变量

[printenv] 显示环境变量

[export] 设置环境变量

[env] 设置临时环境变量

[unset] 释放环境变量

[setenv] 设置环境变量

[unsetenv] 释放环境变量

[source] 执行文件当中的命令

[man] 查询命令手册

[info] 查询超文本命令手册

[whatis] 显示命令简介

[apropos] 通过关键字查询手册

三. 用户管理相关命令

[su] 切换到其他用户

[useradd] 追加用户

[adduser] 追加用户

[userdel] 删除用户

[usermod] 修改用户设置

[chfn] 修改用户私人信息

[groupadd] 追加组

[groupdel] 删除组

[groupmod] 修改组设置

[passwd] 更改密码

[whoami] 显示用户名

[logname] 显示登录用户帐号

[users] 显示所有登录用户信息

[who] 查询登录用户信息

[w] 查询登录用户信息

[id] 显示指定用户的ID信息

[groups] 显示指定用户的所属组

[finger] 显示指定用户的个人信息

[mesg] 开关与他人收发消息

[write] 给其他用户发消息

[wall] 给所有用户发消息

[talk] 和其他用户聊天

四. 系统消息相关命令

[top] 提供了实时的对系统处理器的状态监视

[date] 显示/设置当前时间

[uptime] 显示系统运行时间

[arch] 显示机器的核心构架(如i386)

[uname] 显示操作系统信息

[tty] 显示终端名

[last] 显示登录/登出在履历

[lastb] 显示非法登录信息

[dumpkeys] 显示当前键盘配置

[loadkeys] 变更键盘配置

[df] 查询磁盘使用信息

[du] 查询磁盘使用信息

[dmesg] 显示系统启动消息

[script] 保存输入输出到文件

五. 文件操作相关命令

[ls] 显示文件列表

[tree] 显示目录树

[pwd] 显示当前路径

[cd] 更改当前路径

[pushd] 追加路径到目录堆栈

[popd] 从目录堆栈删除路径

[dirs] 显示目录堆栈的内容

[mkdir] 创建路径

[rmdir] 删除路径

[cp] 复制文件/目录

[rm] 删除文件/目录

[mv] 移动文件/目录,修改文件名

[chown] 更改文件/目录的所有者

[chgrp] 修改文件/目录的所有组

[chmod] 修改文件/目录的权限

[touch] 更改文件时间

[ln] 建立文件/目录链接

[find] 查找文件

[whereis] 显示文件存在的路径名

[file] 查询文件种类

[size] 查询文件大小

六. 文件编辑相关命令

[cat] 显示文件内容

[tee] 输出到文件和屏幕

[more] 分屏显示文件内容

[less] 分屏显示文件内容

[head] 显示文件头部内容

[tail] 显示文件尾部内容

[fold] 折叠显示长行

[sort] 排列文件的行

[cmp] 比较文件内容

[diff] 显示文件差异

[nkf] 更改日语文件编码

[dd] 变更文件之后复制

[wc] 统计文本单词数,文件大小等

[split] 分割文件

[paste] 以行连接文件

[join] 以字段连接文件

[grep] 查询文字

[uniq] 过滤重复部分显示文件内容

[tr] 替换文字

[sed] 替换文字

[vi] vi文字编辑器

七. 压缩/解压缩相关命令

[tar] 压缩/解压缩文件

[compress] 压缩/解压缩文件

[uncompress] 解压缩

[gzip] 压缩/解压缩文件

[gunzip] 解压缩

[zcat] 显示压缩文件的内容

[lha] 压缩/解压缩文件

[uuencode] 把二进制文件编码为文本文件

[uudecode] 把经过编码的文本文件还原为二进制文件

八. MS-DOS工具集

[mtools]命令

[mdir] 显示文件列表

[mcd] 改变当前目录

[mmd] 新建目录

[mrd] 删除目录

[mdeltree] 删除目录树

[mcopy] 复制文件

[mdel] 删除文件

[mmove] 移动文件

[mren] 更改文件或目录名

[mattrib] 修改文件属性

[mtype] 显示文件内容

[mdu] 查询文件或目录大小

[minfo] 显示磁盘信息

[mformat] 以MS-DOS方式格式化磁盘

[mlabel] 设置磁盘标签

九. 控制外部设备相关命令

[mount] mount上设备

[umount] 解除已经mount上的设备

[eject] 弹出(CD/DVD等)

[fdformat] 格式化软盘

[fdisk] 配置/显示硬盘分区

[mkfs] 格式化磁盘分区

[fsck] 检查/修复磁盘错误

[lpr] 打印到打印机

[lprm] 中断打印任务

[lpq] 显示打印任务的状态

[lpc] 管理/控制打印任务

[ifconfig] 显示/设定NIC配置

十. 进程及任务管理相关命令

[ps] 显示正在运行的进程

[jobs] 显示后台运行任务

[fg] 把任务切换到前台

[bg] 把任务切换到后台

[kill] 中止进程或任务

[killall] 中止进程或任务

[wait] 等待进程或任务的结束

[at] 设置定时执行任务

[atq] 显示尚未执行的任务

[atrm] 删除定时执行任务

[batch] 在系统负荷减轻的时候执行任务

[nice] 改变优先度并执行任务

[nohup] 在后台执行任务,Logout之后也不退出

[sleep] 休眠一定的时间

[crond] 用来定期执行程序的命令

[screen] 可以在多个进程之间多路复用一个物理终端的窗口管理器

十一. 网络管理相关命令

[netstat] 显示当前网络连接状况

[route] 显示/设置路由

[host] 显示网络主机情况

[hostname] 显示/设置当前主机的名字

[ping] 确认和远程机器的连接情况

[traceroute] 显示路由信息

[rwho] 查询网上机器的登陆用户

[ruptime] 查询网上机器的系统运行时间

[rlogin] 登陆到远程机器

[telnet] 用telnet登陆到远程机器

[rsh] 给远程机器发送命令

[rcp] 在远程机器之间复制文件

[mail] 收取邮件

[sendmail] 发送邮件

[mailq] 确认邮件队列

[ftp] 用ftp传输文件

十二. 其他命令

[cal] 显示日历

[clear] 清屏

[gcc] 编译C语言代码

[as] 汇编

[bc] 计算

[rpm] Redhat的包管理

[dpkg] Debian的包管理

[installpkg] Slackware的包安装(删除命令则是removepkg)

[xf86setup ,turboxfg,Xconfigurator] 配置X服务

[startx] 启动 X-Window 图形界面