禁用FCKeditor浏览服务器功能

FCKeditor应该是功能最强大的网页编辑器了,提供js版本和java版本,而且功能特别丰富。

image

猛击这里打开FCKeditor的主页

正是因为功能太丰富,所以往往带来安全原因,用这个可以随意上传图片和文件,还能浏览服务器?!

不行不行,这一定得禁用,否则就是给脚本小子提供工具了嘛。

配置fckconfig.js 118行左右,修改Basic模板,加入图片和表情功能

FCKConfig.ToolbarSets["Basic"] = [
['Bold','Italic','-','OrderedList','UnorderedList','-','Link','Unlink','-','Image','Smiley']
] ;

继续修改tckconfig.js 284左右,去除一些浏览功能,修改为false

FCKConfig.LinkBrowser = false ;//关闭增加连接中浏览服务器功能
FCKConfig.LinkBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Connector=' + encodeURIComponent( FCKConfig.BasePath …
more ...

关于禁用Javascript的讨论

做用户验证时候,在为客户端和服务器端各自的验证发愁,这时候我想到一个问题,现在这么多网站依赖javascript来表现页面,那么如果禁用了会怎么样呢。

Google了一下,找到一篇06年的帖子。当客户端把Javascript禁用后,猛击这里打开

最让我吃惊的是这篇神奇的帖子从06年被讨论到09年,从挖坟N次,好狠...

摘录部分语句如下:

所以我会做一个纯HTML的首页,告诉人家不要屏蔽javascript,不要屏蔽ActiveX,不要............:( :(

看看Gmail怎么做的。我觉得那就是答案(的一种)。

禁止JS上在功能的使用上致少不该受到影响,但是国内的许多网站不去考虑这个。 只是盲目的跟风, 什么AJAX、什么体验,很多都是建立在JS上的,一旦使用的浏览 器不支持JS,就什么都没了。google做得不错,可是国内一些所谓的门户网站,像sinasohu163yahoo或多或少都存在一定的问题,这些站的首页或许没 什么问题,但看看其它的页面就知道。 既然浏览器提供了禁用JS、禁用COOKIE的功能,那我们就不得不考虑禁用后对我们的影响。

CJJ 老是走极端。

什么网站能满足100%的用户需要?

GOOGLE搜索,只能说第一页的排序满足80%的人的需要。

所以,做一个检查,低于10%的人没有打开JS,就不用专为他们搞一个版本了 …

more ...

软考记

今天参加软件设计师的考试,早上7点就起床了,可怜的我昨天调Ajax到一点啊,困的不行了。

坐了半小时车到考场,最郁闷的事情终于发现了,忘了带准考证?!,怎么可能?!浑身上下找遍只有一张校园卡和一张学习委员用的信息员证。。。

无奈,监考老师说这个不能证明身份,跑到考试办公室开了一张证明,托词我身份证丢了,呵呵,当然了,它会在一个星期内被好心人捡到的。。。

过几天还要去信息产业办公室证明一下,真麻烦。

顺便给个网址:江苏省软考成绩查询:猛击这里打开。今天考试还可以, 60%过吧,听天由命。

(网址居然是.action,哈哈,Struts2写的啊)

more ...

Struts2中Ajax的使用

贴吧1.0差不多可以完成了,进入界面美化,我服务器验证写完之后,开始用jQuery写js。

使用了jQuery的UI,后来想加入Ajax验证,但是遇到了问题:

09-05-23 07:53 WARN [org.apache.struts2.dispatcher.Dispatcher] - Could not find action or result

There is no Action mapped for namespace / and action name AjaxLogin. - [unknown location]

我整整找了一个多小时,曾以为是action name的问题或者是package name, package namespace 的问题,为此我特意重新学习了一下他们的使用方法,但是仍然没有效果。

最后,终于在Google找到了一些资料:

struts2 json jquery …

more ...

乱码之战

今天重新设计了贴吧的数据库,参考了WordPress的无外键,设置default的值,我取消了两个外键,仅保留一个对应CategoryId的外键。

修改数据库时候发现MySQL的charset还是'latin',就顺手修改成'utf-8'来保证统一,结果就出事了。

因为我修改了DAO,单元测试之后重新走一遍网页测试流程,结果发帖时候遇到乱码。

一回生两回熟,咱也不怕。

在Action里面设置logger,输出相应的数据,发现那里就是乱码,说明在Severlet或者Interceptor那里就出了问题。

仿照上次设置Tomcat字符集,详情见Eclipse中开发的Jave EE项目在Tomcat的部署 ,但是测试发现没有效果。

接着查看web.xml,发现里面还有Spring的filter,贴吧现阶段还没有加入Spring,删除,有一个编码过滤器org.apache.struts2 .dispatcher.FilterDispatcher,采用org.apache.struts2.dispatcher.FilterDispatcher可 以不适用,删除。

这么一删,就发现乱码问题解决了。

呵呵,只要人类还有很多语言,乱码仍然会存在,遇到了不要怕,慢慢调试就出来了

more ...

美化postviews

很多朋友用postviews这个插件,的确很适合国人的风格,但是如果单纯的添加到页面中,会显得很突兀,难看,我做了几个美化工作。

首先,在用到postviews函数时候都定义span id,比如在single.php中修改,在下面代码

<span><?php the_author_posts_link(); ?></span><?php endif; ?>

后面跟上一段显示浏览次数的代码

<span><?php the_author_posts_link(); ?></span><?php endif; ?>

这样就可以显示浏览次数。

然后修改style.css文件,我的是inove主题,在382行附近修改

.post .date,
.post .author,
.post .postviews,
.post .editpost,
.post .comments,
.post .addcomment,
.post .addlink,
.post .editlinks {
background:url(img/icons …
more ...

Struts2的s:if标签的Bug和曲线使用

贴吧的用户状态显示,登录和未登录应该是不同的div显示,我决定用做标签。

本来应该很简单的事情,却没有我预想中的情形出现,检查后发现失效了,代码如下:

<li>${session.userName}欢迎你</li>
<li><a href="Logout.action">注销</a></li>

Struts2的官方文档中标签库介绍写的很清楚,官方示例文档如下

<s:if test="%{false}">
<div>Will Not Be Executed</div>
</s:if>
<s:elseif test="%{true}">
<div>Will Be Executed</div>
</s:elseif>
<s:else>
<div>Will Not …
more ...

Eclipse中开发的Jave EE项目在Tomcat的部署

贴吧最基本的功能写完了,正好可以应付数据库设计课的实验。于是我准备把贴吧的项目从Eclipse的开发环境中移植出来,在Tomcat中进行部署。

也许是习惯了Eclipse提供的便利,这个小小的移植,居然难倒了我,直接把Eclipse里的PostBar考出,根本不能运行,直接报404错误。Google 上也没有提供详细的步骤,也许大家都觉得这个问题很简单吧,呵呵。

我琢磨了一会,终于整理出了头绪。

1.修改Apache-conf-server.xml这个文件,修改其中一段...如下所示

<host appbase="webapps" name="localhost"
    unpackWARs="true" autoDeploy="true"
    xmlValidation="false" xmlNamespaceAware="false">
    <context debug="0" docbase="F:T3" path="/postbar">
          reloadable="true" crossContext="true">
    </context>
</host>

这一段的作用是在原先webapps的目录下添加虚拟目录/postbar …

more ...

小站恢复记

由于原来服务器被攻击,销售代表给我重新安排了一台主机,之前我做过一次数据备份,但是文件没有备份,左等右等,都不见服务器恢复,于是打定主意自己恢复自己的数据, 重建博客。

首先得确保手头有原始的数据,我当时在phpMyAdmin中导出了所有的数据保存为sql文档。

1.重新创建原始的WordPress,并把原来的一些插件和主题重新安装好。重新创建的数据库名称可能与原来的数据库名称有出入,就需要修改导出的sql文件。

2.比如我原始的数据库名称是alswl_wp,现在创建的数据库是dddspace_wp(记住哦,是全称,不是自己填的部分)。找到sql文件 ` --

-- 数据库: alswl_wp

CREATE DATABASE alswl_wp DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

USE alswl_wp;`

只保留 USE 'alswl_wp',并且修改为USE 'dddspace_wp',之所以不在这里创建,是因为一般空间管理器取消了phpMyAdmin创建数据库权限,只能在面板创建。

如果当初备份数据库是全部备份的话可能还会有其他的系统数据库,这些必须删除,保证sql文件只对dddspace_wp这个数据库进行增加表的操作

3.为了保证数据库数据正确,把WP自动创建的表删除,然后就可以导入sql文件执行了 …

more ...

下雨天

很不喜欢下雨天啊,每每这个时候,心情总是比较低潮`

尤其记得小时候在电视屏幕前,红木沙发,黑洞洞的屋子里,我一个人在看着动画片,大凡这个时候作业是没做的,承受着心理的压力享受着片刻的欢娱`

博客搬过来两天了,还不太习惯使用个人博客,在hostshar.cn和wordpress.org.cn混迹着,今晚上还写了一篇帖子我的博客--- DDD的一亩三分地

订阅了好几个喜欢类型的博客,幸亏有Google Reader这个强大的在线订阅器,浏览很舒服.

看到网友都通过博客提供业界资讯,应该是他们感兴趣的,我吧,喜欢用iGoogle看资讯,IT资讯去cnBe ta看,社会新闻、八卦新闻去网易看,自己还没有养成自己发布信息的 良好习惯。

看了其他网友们的文字,感觉自己文学素养真是负数了,嗯,以后要适当加强了````

more ...