-
网页获取微信openid
现在有个功能需要用到用户的`openid`,但是发现微信JS接口没这个功能。后来去官网找了一下,原来在这里:[http://mp.weixin.qq.com/wiki/17/c0f37d5704f0b64713d5d2c37b468d75.html](http://mp.weixin.qq.com/wiki/17/c0f37d5704f0b64713d5d2c37b468d75.html)。
微信公众号 openid -
SVN迁移
把SVN迁移到本地来,本来以为直接拷贝SVN目录就可以了,但是发现直接拷贝SVN目录是会存在问题的,因为版本不同总是提示:**期望文件系统格式在“1”到“4”之间;发搜索现格式“6”**。所以还是使用了svn的命令,步骤如下:*备份svn存储库```bash#压缩备份svnadmindumpE:/SVN/acgist|gzip>./acgist.gz#不压缩备份svnadmindumpE:/SVN/acgist>./acgist.svn```*恢复svn存储库```bash#建立新的svn存储库svnadmincreateE:/SVN/new#导入存储库数据svnadminloadE:/SVN/new<./acgist.svn```>更多参考:[http://blog.chinaunix.net/uid-354915-id-3766906.html](http://blog.chinaunix.net/uid-354915-id-3766906.html)项目迁移使用`relocate`,还有就是Eclipse/MyEclipse里面废弃旧的SVN地址,会出现无法废弃旧的位置,迁移后废...
SVN 废弃位置 SVN迁移 -
Google Chrome浏览器滚动条优化
做了一个Chrome滚动条优化的示例,但没做IE和Firefox的兼容。```css::-webkit-scrollbar{width:16px;height:16px;box-sizing:border-box;}/**滚动条基本信息*//***滚动条两端的按钮样式:*vertical:竖直滚动条;*:horizontal:横向滚动条;*:start:上边/左边按钮;*:end:下边/右边按钮*后面控制条相同*/::-webkit-scrollbar-button{width:16px;height:16px;background-repeat:no-repeat;background-image:url("./bar_arrows.png");}::-webkit-scrollbar-button:vertical:start{background-position:0px0px;}::-webkit-scrollbar-button:vertical:start:hover{background-position:-32px0px;}::-webkit-scrollbar-button:vertical...
Google Chrome 滚动条 -
Java设置socket超时时间
网上看了写文章,发现很多设置`socket`连接超时时间使用的是`setSoTimeout`这个方法,但这个不是设置连接超时方法,而是设置读取超时方法。设置连接超时实在`socket`的`connect`方法,方法的最后一个参数就是连接超时参数:```java/***Connectsthissockettotheserverwithaspecifiedtimeoutvalue.*Atimeoutofzeroisinterpretedasaninfinitetimeout.Theconnection*willthenblockuntilestablishedoranerroroccurs.**@paramendpointtheSocketAddress*@paramtimeoutthetimeoutvaluetobeusedinmilliseconds.*@throwsIOExceptionifanerroroccursduringtheconnection*@throwsSocketTimeoutExceptioniftimeoutexpiresbeforeconnecting*@throwsjava.nio...
Java socket timeout -
IE7/8/9/Firefox/Google Chrome的css hack
一直不想调CSS的兼容,但是没有前端这破事就落到了我的身上。特别是IE这坑爹的东西,IE7/8/9/10/11标准一个和一个不一样。看下面的代码吧:```css.search{height:30px;width:30px;position:absolute;margin-top:3px;//以Chrome为基准margin-top:10px\0;//IE8,但是\0包含的IE版本为:7/8/Edge+margin-top:2px;//IE7}:root.search{//注意:root选择器Firefox和Chrome都支持的margin-top:4px\9;//IE9/10,9和10的区别不是非常大,就这样或者IE10用CSS调margin-top:4px\0;//Edge模式,我不知道这是个什么模式反正也是坑爹的东西}@-moz-documenturl-prefix(){.search{margin-top:4px;}};//火狐```IE6没有适配,是因为我的IE没这个模式的选项,不过网上说的是`_margin-top`这样可以。还有`*margin-top`好像IE6/7都支持,没试过。![IE调试]...
IE Firefox Google Chrome css hack -
Freemarker小错误
遇到下面一个错误信息:```java==>time[intemplate"acgist/article/experience.ftl"atline41,column83]Thefailinginstruction:==>${time}[intemplate"acgist/article/experience.ftl"atline41,column81]]withrootcauseFreeMarkertemplateerror:For"${...}"content:Expectedastringorsomethingautomaticallyconvertibletostring(number,dateorboolean),butthisevaluatedtoamethod(wrapper:xx.template.method.TimeMethod):==>time[intemplate"acgist/article/experience.ftl"atline41,column83]Thefailinginstruction(FTLstacktrace):----------==>${t...
Freemarker -
Window中Python错误码含义
WindowsError的错误代码详解:0操作成功完成。1功能错误。2系统找不到指定的文件。3系统找不到指定的路径。4系统无法打开文件。5拒绝访问。6句柄无效。7存储控制块被损坏。8存储空间不足,无法处理此命令。9存储控制块地址无效。10环境错误。11试图加载格式错误的程序。12访问码无效。13数据无效。14存储器不足,无法完成此操作。15系统找不到指定的驱动器。16无法删除目录。17系统无法将文件移到不同的驱动器。18没有更多文件。19介质受写入保护。20系统找不到指定的设备。21设备未就绪。22设备不识别此命令。23数据错误(循环冗余检查)。24程序发出命令,但命令长度不正确。25驱动器无法找出磁盘上特定区域或磁道的位置。26无法访问指定的磁盘或软盘。27驱动器找不到请求的扇区。28打印机缺纸。29系统无法写入指定的设备。30系统无法从指定的设备上读取。31连到系统上的设备没有发挥作用。32进程无法访问文件,因为另一个程序正在使用此文件。33进程无法访问文件,因为另一个程序已锁定文件的一部分。36用来共享的打开文件过多。38到达文件结尾。39磁盘已满。50不支持网络请求。51远程计算机不可用。52在网络上...
WindowsError Python -
数字汉字大小写转换
数字汉字大小写转换DEMO地址:[http://www.acgist.com/demo/number-case/index.html](http://www.acgist.com/demo/number-case/index.html)
数字大小写转换 -
用HTML5和JS实现视频弹幕
使用HTML5实现的视频弹幕,可以横着,斜着发送弹幕,还可以发送图片弹幕。示例地址:[http://www.acgist.com/demo/barrage/index.html](http://www.acgist.com/demo/barrage/index.html)
JS HTML5 视频弹幕 -
discuz修改数据库地址
今天把数据库迁移了,发现但是修改了`config`文件夹里面的配置,发现登录后`ucenter`后台页面打不开,提示操作超时。原来还需要修改discuz根目录下`./uc_server/data/config.inc.php`这个文件的配置。
discuz -
JPA级联更新
今天有个需求要更新订单项,但是总出现下面错误:```javaorg.springframework.orm.hibernate3.HibernateSystemException:Acollectionwithcascade="all-delete-orphan"wasnolongerreferencedbytheowningentityinstance:xx.xxxx.entity.Order.orderItems;nestedexceptionisorg.hibernate.HibernateException:Acollectionwithcascade="all-delete-orphan"wasnolongerreferencedbytheowningentityinstance:xx.xxxx.entity.Order.orderItemsatorg.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:690)atorg.springf...
JPA级联更新 cascade all-delete-orphan CascadeType.ALL -
jQuery找不到方法
今天使用jQuery时抛出错误:```javascriptUncaughtTypeError:undefinedisnotafunction```就是没找到方法,原来的部分代码:```javascriptvartimes=$("#msgs.time");for(varindexintimes){vartimeobj=times[index];varvalue=parseInt(timeobj.attr("data-time"));alert(value);}```其实最重要的就是获取对象的方式,如果是通过数组的获取方式也就是`[index]`来获取对象的时候,jQuery会转为js的对象,所以需要使用jQuery的`.eq`来获取到对象就可以了。```javascriptvartimes=$("#msgs.time");for(varindexintimes){vartimeobj=times.eq(index);varvalue=parseInt(timeobj.attr("data-time"));alert(value);}```或者可以使用jQuery的`.each`来遍历也可以。
jQuery -
QQ登录jar和commons-codec冲突
错误信息:```java十二月19,201411:55:40上午org.apache.catalina.core.StandardWrapperValveinvokeSEVERE:Servlet.service()forservlet[springmvc]incontextwithpath[/]threwexception[Handlerprocessingfailed;nestedexceptionisjava.lang.NoSuchMethodError:org.apache.commons.codec.binary.Base64.encodeBase64String([B)Ljava/lang/String;]withrootcausejava.lang.NoSuchMethodError:org.apache.commons.codec.binary.Base64.encodeBase64String([B)Ljava/lang/String;atxxxx.controller.CommonController.publicKey(CommonController.java:68)atsun.refl...
Sdk4J.jar commons-codec jar冲突 -
Nginx配置默认错误图片
之前我一直配置错误图片是下面这种配置,也是之前看的别人的网站这样写的:```error_page404=/img/body/404.png;```但是我发现一个问题,就是不存在这个图片的时候,状态是`200`不是`404`,这样不是非常好。所以改了一下,这里主要原因是因为那个等号,修改了状态码,所以去掉就可以了。```error_page404/img/body/404.png;```
Nginx 默认错误图片 -
Nginx PHP设置默认首页
以前一直用Java,所以默认的`index`在`web.xml`就配置了,但是使用PHP却发现只敲IP访问,总提示`nginx"403Forbidden"`,配置如下:```location~\.php${root/home/www/bbs;fastcgi_pass127.0.0.1:9000;fastcgi_indexindex.php;fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;includefastcgi_params;}```配置了但是没有效果,其实`fastcgi_index`是没有作用的,因为既然以`.php`结尾了,那么很明确文件了,配置index就没意义了。所以正确的配置是这样的:```location/{root/home/www/bbs;fastcgi_pass127.0.0.1:9000;fastcgi_indexindex.php;fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;includefastcgi_params;}``...
Nginx PHP 默认首页 Nginx 403 Forbidden -
discuz部分修改
discuz和Java系统整合,但是麻烦的事情来了,Java系统没有`username`,统一使用邮箱的,但是discuz必须要用户名而且邮箱不符合用户名的规范,现在正在解决中。>注意:以下代码都是站长自己修改,由于站长不懂PHP,只是照葫芦画瓢,所以可能存在一些问题,请谨慎使用。另外网站使用了邮箱登录注册,所以改了很多地方的`$username`为`$email`请熟知。首先解决接口使用邮箱登录,其实有注释很简单就可以看懂的,但是最重要的一个参数`$isuid`注释简直无情,最后看了源码:```php$this->init_input();$isuid=$this->input('isuid');$username=$this->input('username');$password=$this->input('password');$checkques=$this->input('checkques');$questionid=$this->input('questionid');$answer=$this->input('answer');if($isui...
discuz ucenter discuz-ucenter-api-for-java discuz邮箱登录 discuz自动激活 -
discuz通信成功不能同步
昨天也是搞了Java到discuz同步可以了,但是discuz登录这些都不能同步到Java系统,网上资料都试过了都不行,通信成功,**但是发现注册退出等等根本就没有请求Java系统的接口**。说实话我已经猜到是discuz的问题了,但是确实不知道怎么改,配置基本上能试的都试过了。不过最后终于是找到了解决办法,果然是discuz的配置有问题,把discuz目录下server的`apps.php`拷贝到client覆盖掉就可以了。```bashcp./uc_server/data/cache/apps.php./uc_client/data/cache/apps.php```>参考文章:[http://www.12345t.com/code/CMS/20140707/345.html](http://www.12345t.com/code/CMS/20140707/345.html)
discuz ucenter -
discuz登录提示Authorization has expired
今天搞了一下discuz的单点登录,使用discuz自带的ucenter,但是Java平台同步到discuz的时候,总返回`Authorizationhasexpired`。原来是Linux安装的时候时区选择不对,和我的Window时间不一致导致的。
ucenter discuz Authorization has expired -
discuz非常慢
discuz装好了,但是访问非常慢,我一直以为是我的环境有问题,但是该优化的基本都优化了,但是依旧非常慢。最后我就猜想到是不是数据库的问题,果然使用`showprocesslist;`一查询数据库非常多的`unauthenticateduser`。为什么会有这个东西,因为我的数据库没装在虚拟机的Linux上面,而是访问的Window上面的MySQL,所以就出现了这个反向查询。>参考文章:[http://www.blogguy.cn/archives/?article-775.html](http://www.blogguy.cn/archives/?article-775.html)解决办法就是在`my.ini`(Linux是`my.cnf`)的`[mysqld]`后面加上:`skip-name-resolve`>这个参数主要用来反查客户端IP和域名的。如果是绿色版MySQL,请复制`my-huge.ini`改名为`my.ini`就可以了(路径不用变),重启`mysqld`就好了。。首先选择桥接模式(NAT模式共享主机的IP,这个应该局域网其他用户不能直接访问你虚拟机里面的系统):修改网卡信息(后面是添加的,修改为静态IP):然后执行命令:`ifupeth0`,然后测试:最后要修改`ONBOOT="yes"`,开机自动启动该网卡。然后又遇到了一个问题:...
虚拟机 CentOS 网卡设置