-
浏览器静态资源文件(CSS/JS/图片)不能正常加载
今天遇到了一个重来没有遇到的问题,浏览器控制台提示:```ResourceinterpretedasStylesheetbuttransferredwithMIMEtypetext/html:"http://www.xxxx.com/index.css".```诶,类型不对也不可能啊,服务器类型都没问题,同事的电脑访问都正常,直接敲地址也能访问。```Content-Type:text/html;charset=gb2312```控制台的类型是这个,确实不对啊,浏览器问题,换浏览器还是一样。什么问题呢?刚好同事提醒是不是安全卫士的问题,于是我关了TX电脑管家,果断正常了。这我就纳闷了,这怎么拦截我的CSS?不科学啊。原来我昨天启用了腾讯管家的广告拦截那个插件,TX这也太没有技术含量了,这也能当成广告过滤,不过应了那句话自作孽啊。还有一些浏览器:猎豹、360很多都自带广告拦截的,不知道有没有人也踩过坑了。
浏览器 静态资源 -
PostgreSQL数据库Hibernate使用数据库函数问题
今天我使用`Hibernate`的`SQLQuery`进行`sum`求和的时候,查询结果返回的是一个`Object`数组对象,但是查询回来的结果的值是一样的。下面是我的SQL:```sqlselectsum(pv),sum(uv)fromtb_orderwhereid=1;```数据库查询的结果:![SQL结果](https://static.acgist.com/resources/images/article/201501/13921959121021010.png)确实是两个不同的值,但是为什么会一样呢?其实仔细观察可以发现结果的**两个列的名称是一样的**,然后我把SQL改成:```sqlselectsum(pv)aspv,sum(uv)asuvfromtb_orderwhereid=1;```改成这样后,列名不一样了,果断`Hibernate`的结果也对了。**这个问题暂时只在使用PostgreSQL数据库中发现,MySQL的列名就是`sum(pv)`和`sum(uv)`所以不会出现该问题,其他数据库自测**。
PostgreSQL Hibernate SQL函数 -
Resin域名配置
Resin多域名配置:*二级域名或者多个域名配置不同项目```xmlwww.acgist.comarticle.acgist.com```*同一个项目多个域名```xmlwww.acgist.comarticle.acgist.com```*使用正则表达式```xml(.*).acgist.com```
Resin 域名配置 -
JS和CSS在网站中路径的区别
最近也是把网站的静态资源重新做了一下,图片等等静态资源使用独立的域名,这样可以避免一些不必要的`cookie`,其实小网站没什么作用的(其实我做这个只是玩玩而已)。但是对于淘宝,百度等等大型网站应该都是做了的,每个`cookie`算`1KB`,那如果一个网站一天被请求`1KW`次,每次10个静态资源,那么相当于占用了10G的数据流量,而且这些事完全没有必要的,所以这个还是可以研究一下的,这个详情请Google一下`cookie-free`。好了,进入正题,我们网站基本都是使用相对路径来引入一些资源的,比如CSS引入背景图片是这样:```cssbackground-image:url("/img/bg.gif")```导入CSS时标签:```html```那么引入这个图片的路径将是:**http://static.acgist.com/img/bg.gif**用JS插入了一张图片标签:```html```导入JS时标签:```html```这时候导入的图片路径:**http://www.acgist.com/img/bg.gif**>www.acgist.com是引入JS的页面地址这样对比可以看出来,当我...
JS CSS 路径 -
好用实用的在线工具
##中文域名转码[http://www.dreamspeed.org](http://www.dreamspeed.org)现在很多中文的域名,有时候需要知道对应的英文域名就可以使用这个工具。##JSON工具[http://www.bejson.com](http://www.bejson.com)可以校验格式,与xml转换等等很多功能。##CSS/JS压缩[http://tool.oschina.net/jscompress](http://tool.oschina.net/jscompress)对CSS/JS进行压缩,[http://tool.oschina.net](http://tool.oschina.net)这里还有其他很多工具。##网站整理检测优化[http://www.alibench.com/](http://www.alibench.com/)非常全面的检测网站并提出优化建议,百度分享的页面检测差不多。但是百度的工具总是有些检测有问题,比如开启了静态缓存有时候却检测不出来,有时候有能够检测出来。还有Google的GooglePageSpeedInsights也挺不错的。不过阿里测有时候老提...
网站工具 网络工具 -
Struts2不拦截部分请求
我配置Struts的时候喜欢用`/*`这样有一些不想要被拦截的请求就被拦截了。比如一些验证码和图片上传的`servlet`,`WebSocket`都被拦截导致出现一些问题。幸好Struts提供了`struts.action.excludePattern*`这个配置可以是这些请求不被拦截。这个其实Google一下就可以了,我主要说两个注意的地方:*URL匹配不是像`web.xml`那种`url`匹配的,**使用的是正则表达式匹配**。*配置多个请求的时候,使用逗号分隔。开始我以为是每个都配置一个,所以配置了四个,但是发现第三个总是被Struts拦截,后来改成逗号分隔后就好了。
Struts2 excludePattern struts.xml -
kindeditor加载内容问题
一开始没怎么注意这个问题,今天发现含有标签的内容,加载的时候怎么就过滤了标签的内容。比如`List`,保存没有问题,但是加载的时候就不见了。我想都转义了,源代码里面都是`<`和`≷`了,怎么还是过滤了,所以我以为这是一个`BUG`,但是想了想这么明显不可能没有修复。于是就怀疑我的加载方式不对,后来发现果然是因为我的“打开方式”不对。我一直都是直接`textarea`标签中间插入加载内容的,然后改为使用编辑器提供的`html(value)`方法就没有问题了。
kindeditor -
使用HttpClient模拟浏览器
最近研究一下某个软件的接口,不得不使用一下模拟浏览器去对接,于是今天我就研究了一下。如何模拟浏览器?一般的HTTP请求还简单,关键是要模拟登录需要记住`session`等信息比较麻烦了。幸好`apache`提供了一个工具包,其实很多人也用过这个,就是`HttpClient`。>区分以下`commons-httpclient`,这是旧版依赖,官方推荐`HttpClient`。例子:```javaHttpClientclient=newDefaultHttpClient();HttpPostpost=newHttpPost("http://xxxx");post.addHeader("xxxx","xxxx");//添加一些请求头部//参数Listnvps=newArrayList();nvps.add(newBasicNameValuePair("xxxx","xxxx"));post.setEntity(newUrlEncodedFormEntity(nvps));HttpResponseresponse=client.execute(post);//执行请求//读取返回内容BufferedReader...
HttpClient 模拟浏览器 -
CSS3让动画停留在最后一帧
在画文章首页的那个蝴蝶的时候就想让蝴蝶飞到梅花上,然后就停留在那里。但是我看了看`w3cschool`,没有让动画停留在最后一帧的方法,怎么办呢?我们可以这样解决:首先在让我们需要处理的元素**开始就停留在最后一帧**,比如我让蝴蝶一开始就停留在梅花上面了。然后动画执行到`0%`的时候,也就是开始的时候直接让蝴蝶瞬间移动到我们想要开始的位置,这样结束后动画就可以在最后一帧了。
CSS动画 -
百度云存储
最近心血来潮看了看百度云存储,最开始以为是免费的,后来搞了才发现免费是有限额度的,不过对于我来说免费的也够用了。百度云存储其实挺不错的,速度比较快,可以外链,一般用来做论坛发帖时用户发送图片保存什么的挺不错的。超出额度后收费感觉也挺便宜的,对于带宽不够怕图片影响加载速度的我来说还是值得研究一下的。*首先到[控制台](http://developer.baidu.com/console)创建一个应用。*然后进入应用控制台,选择云存储,创建一个`bucket`。*最后到`sdk`和工具那里下载对应的`sdk`就可以开发了。>`sdk`提供了上传`putObject`,删除`deleteObject`,获取`getObject`等等主要的方法。注意一下`url`签名那里就可以了,我找了半天那个`url`签名其实那个东西,就在你进入`bucket`后,上面就有个`url`签名,点击就可以看到`ACCESS_KEY`和`SECRET_KEY`。>吐槽一下我的视力,那么大几个字居然没看到,如果你也没有找到就`ctrl+f`吧!下面附带一个简单的上传的例子:```javaStringHOST="bcs.duap...
云存储 百度云存储 -
制作手机网页
最近修改手机的论坛,想要自己重新做一个,但是发现我写出来的页面总是不对劲。如果是适应屏幕模式的时候发现样式都没有作用了,但是用缩放屏幕的时候发现文章很多都缩小,不好操作和看不清楚。最后我看其他手机网页的时候发现多了个`meta`信息,于是我就在我的页面也加上,果断没有问题了。内容如下(应该只有支持html5的浏览器支持):```html```Google后发现这段标签只有在移动端才有用,含义分别是:宽度默认为移动设备的宽度,初始大小为1.0,最大缩放大小为1.0,最后一个就是用户是否可以缩放屏幕的意思。
手机网页 响应式网页 -
Nginx服务器维护错误页面
首先`Nginx`错误页面我也是跳转到我的`Tomcat`的服务器页面,所以我的`Tomcat`关闭的时候就是维护服务器。当我们的`Tomcat`关闭的时候,`Nginx`的错误码是`502`,所以配置错误页面:```bash#maintain.html是维护页面error_page502/maintain.html;```然后配置错误页面的`location`:```bashlocation=/maintain.html{root/home/www/tomcat/dm/ROOT;}```这个时候关闭`Tomcat`就会跳转到维护页面,但是有一个非常严重的问题,就是返回的状态码是`502`,所以最后就是改掉状态码就可以了:```basherror_page502=503/maintain.html;```**注意:上面`=503`中间是不能有空格的**。
Nginx 错误页面 Tomcat -
Nginx多域名配置问题
今天配置`Nginx`多域名地址重写,我在火狐浏览器上面没问题,但是使用Google浏览器的时候域名跳转成功页面却没有显示。好吧,没问题了,清理一下垃圾居然奇迹般的好了😥😥😥
Nginx 域名重写 地址重写 -
JBoss错误页面
JSP设置错误页面:`isErrorPage="true"`时,我遇到了一个怪现象:当我使用`Resin`服务器的时候,`exception.getMessage()`这个就不会出现空指针。但是我生产环境用的确实`JBoss`,这个却抛出来空指针?我纳闷了很久。后来苦思冥想发现原来是因为这个错误页面有时候也作为提示页面,所以不一定是系统抛错才进来这个页面的。所以我估计`Resin`的做法就是不管怎么样你进来我都给你一个`exception`对象,但是`JBoss`就没有生成这个`exception`对象,所以`JBoss`的`exception`到这个页面就是空的。
JBoss -
Struts2 Chrome浏览器两次请求
用的框架是`struts2`,然后拦截配置的是`/*`。使用Google浏览器访问`a`标签,如果`href`没有带参数就不会出现请求两次的问题,例如:`/search`。但是如果带有参数就会发送两次请求,例如:`/search?word=xx`。困扰我几天了,使用其他浏览器没有什么问题。
Struts2 -
关于浏览器多个Tab离开
现在浏览器都支持多个`Tab`,那么离开这个`Tab`去其他`Tab`浏览页面时,我想要在原来`Tab`里面做一些操作用什么事件呢?经过我苦思冥想终于发现,离开这个`Tab`也是失去焦点,所以使用`window`的`onblur`事件可以实现。但是同时又有一个问题了,就是离开浏览器也会触发这个事件,这一点我就不知道怎么解决这个问题了。
浏览器 -
WebServices令人头痛的错误
```javaWSSERVLET12:JAX-WScontextlistenerinitializingWSSERVLET11:failedtoparseruntimedescriptor:javax.xml.ws.WebServiceException:UnabletocreateJAXBContextjavax.xml.ws.WebServiceException:UnabletocreateJAXBContextatcom.sun.xml.ws.model.AbstractSEIModelImpl.createJAXBContext(AbstractSEIModelImpl.java:158)atcom.sun.xml.ws.model.AbstractSEIModelImpl.postProcess(AbstractSEIModelImpl.java:87)atcom.sun.xml.ws.model.RuntimeModeler.buildRuntimeModel(RuntimeModeler.java:262)atcom.sun.xml.ws.server.EndpointFactory.crea...
WebServices resin -
Linux定时任务不执行
最近做了个数据库备份和`jboss`日志删除的定时任务,可以跑了几天发现没有备份。我是直接将任务添加到`/etc/crontab`里面的,`crontab-l`却没有查询出来任务?后来我用`crontab-e`添加了一样的内容但是这次用`crontab-l`查询到了任务。然后再`/var/spool/cron`目录下多了个用户名文件,里面有了我的任务。**后来Google之后发现原来在`/etc/crontab`里面添加任务时需要加上你的用户名**。例如:现在我有一个用户叫`backup`,如果在`/var/spool/cron`里面会多一个`backup`的文件,内容对比如下:```bash#/var/spool/cron/backup5923***/sbin/buckup#/etc/crontab5923***backuprun-parts/sbin/buckup```
Linux 定时任务 crontab -
CSS英文强制换行
最开始我的文章列表那里中文可以自动换行,但是英文虽然换行了,但是却没有环绕图片。试过加上了`word-wrap:break-word;word-break:break-all;`解决不了,设置了`width`也是一样。如图:![CSS换行](https://static.acgist.com/resources/images/article/201501/20130730163102_421.png)后来发现**在`css`里面添加一个`overflow`的属性,值不要是`visible`就可以了。**效果如图:![CSS换行](https://static.acgist.com/resources/images/article/201501/20130730163834_653.png)1.`word-break:break-all;`:只对英文起作用,以字母作为换行依据。2.`word-wrap:break-word;`:只对英文起作用,以单词作为换行依据。3.`white-space:pre-wrap;`:只对中文起作用,强制换行。4.`white-space:nowrap;`:强制不换行,都起作用。&...
CSS 换行 -
Hibernate中Session的小错误
```java{main}org.hibernate.HibernateException:NoSessionfoundforcurrentthread{main}atorg.springframework.orm.hibernate4.SpringSessionContext.currentSession(SpringSessionContext.java:97){main}atorg.hibernate.internal.SessionFactoryImpl.getCurrentSession(SessionFactoryImpl.java:941)```怎么没有打开`session`呢?原来我的事务是在`biz`里面打开的,然而我直接通过`WebApplicationContext`获取到`DAO`的对象进行查询,所以没有打开`session`。
Spring Session Hibernate