博客经过半天时间,将原来的博客系统升级成了SubText 2.5版本,现将过程写下来与有需要的朋友分享:
1. SubText 升级到2.5的问题(如果流程不清楚,可以参见官网的升级方法:):
在升级中,按照官网的方法将所有的数据做好备份之后,覆盖了新的文件,但在访问网站时,出现升级提示界面,需要进入后台完成升级时,界面上的链接却打不开,出现了404的错误。开始蒙了,没有仔细好好研究。后来发现是需要在IIS中配置404错误页的来完成升级。具体的配置方法在官网有:Configure the custom 404 page。
配置好404页后,将可以正常访问链接,升级正常完成,这里需要注意下,数据库如果原来只有读写,在访问网站之前,需要修改成DB Owner,在完成之后,为了安全,请及时改回。
现在也还没有想不通,为什么SubText在升级的时候需要将404自定义到NotFoundPage.aspx中来实现跳转。
2. 模板修改:
原来的模板一直使用的是SubText的原装货,但是也有一些问题,全英文是一个,我使用的这套模板将提示信息放到了页眉,结果导致搜索引擎搜索出来的记录显示的预览全是这些帮助信息。
为此,稍微花了点时间,拷贝出来变成新模板,全部替换成了中文;
当然,也将页面的帮助信息切到了页尾,同时修改了搜索的时候,结果列表的样式,不过为了简单,在模板文件里面直接Hard-code了一些代码。新模板命名为Mitchell,嗯,有点自恋~
3. 模板编码问题:
模板修改的时候发现模板的文件默认都是使用非UTF8格式(我查看的时候显示是GB2312?我觉得这个是IDE的问题)。所以如果你直接将文件中的英文变成中文,在预览时你将会发现比较悲催的现实,满屏都是火星文。
因此,如果是从原始编码来的,请注意转成UTF8格式保存(参见签名和非签名的UTF8的区别可以看这里)。当然,如果需要修改SubText里面自带的Something的话,同理。
4. SubText中的硬编码:
在修改模板的时候同时发现SubText将界面中的一些内容也硬编码到了SubText.Web中,以至于很难在模板文件中直接修改实现。比如:Login,因为有两个状态,登录和管理,为了简单,它在SubText.Web的UI中,直接编码,Admin.Text="Admin"和Admin.Text ="Login",这导致,在模板中,只能指定该链接的位置,样式,而不能更改显示的文本(不重新编译的话),当然,如果一定要修改,也可以使用CSS来实现,但心里还是布满疙瘩。
随着岁月的迁移,版本的升级,其最终也将变得无比复杂和臃肿 —— 正如现在很多人都诟病它生成的页面是如此的不够整洁清爽一般。但总体来说,SubText还是个非常不错的系统,复杂这是任何一款软件的正常生理过程,我们无需过多的对此心存芥蒂,Just use it.