您的位置:首页 > 数据库

支持多语言、多用户、多数据库、完美URL之路过秋天版博客发布[绝对有杀伤力的博客]

2012-03-09 00:00 651 查看
前言:


经过历时近N周的重构,终于要发布首版了,本次发布版本的从功能上讲绝对有杀伤力,目前网上还难以找到完全支持本博客所支持的功能的博客。

不过,目前版本博客还不够完善,只具备了最基本的功能,完整功能等进一步开发。

编辑说明:

为了保持正常演示,维持治安:根据大伙刚才对演示的测试做了以下修正:


a:修正了下博客带"<>
"标签引起页面的加载的错误问题。

b
:关于在登陆或注册时添加"'"号引发的异常,配置文件已关闭了错误信息输出。

c:有人登陆我示例博客改文章和删除文件,已把测试密码从123456修掉了。

[从这里发现,博客里少了修改密码功能..-_-..汗一个,晚上回去加下,明天之前再发布修正版]

欢迎大伙继续搞破坏测试

一:本博客所支持的外围功能说明

1:多国语言支持:中/英/法/日/韩/德/印/俄/意/+自定义 共10种语言

说明:






为什么是10种,不是N种?
这是因为本博客开放语言文件给美工,即由模版制作人负责对语言文件的翻译,因此需要提前约定。

那美工是怎么维护多国语言的?
相当的简单,对美工来说就是html

一份全局的language.html,对前后台翻译都有效:一行一条翻译如:

<
div
id
="china"
eng
="China"
cus
="拼音"
>
中文
</
div
>

默认内置为中文,其它:eng为english的前3字母、cus为custom的前3字母,其它语言类推。

如何可以随意在其它html中使用翻译?

示例:index.html中:
<
a
href
="sys/china"
key
="china"

>
[中文,早晚被替换,写什么都无所谓]
</
a
>

在任意标签中,只要加入key="china",相应的内置文本即会被多国语言所翻译

再细说明:美工完全可以按传统的开发方式开发,最后只需要在需要翻译的地方加入 key="语言ID",即可实现翻译功能。

那语言是怎么转换的?
只要在任意地方加入链接:
<
a
href
="/lang/china"
>
转向中文
</
a
>
,:
<
a
href
="/lang/english"
>
转向E文
</
a
>

因此预定10种语言,其实就是对10种约定的链接做处理而已,其它链接将被忽略,下面列出支持的10种语言枚举:

public enum LanguageKey
{
///
<
summary
>

/// 中文
///
</
summary
>

China,
///
<
summary
>

/// 英文
///
</
summary
>

English,
///
<
summary
>

/// 法语
///
</
summary
>

French,

///
<
summary
>

/// 德语
///
</
summary
>

German,

///
<
summary
>

/// 韩语
///
</
summary
>

Korean,

///
<
summary
>

/// 日语
///
</
summary
>

Japanese,

///
<
summary
>

/// 印地语
///
</
summary
>

Hindi,

///
<
summary
>

/// 俄语
///
</
summary
>

Russian,

///
<
summary
>

/// 意大利语
///
</
summary
>

Italian,
///
<
summary
>

/// 自定义语言
///
</
summary
>

Custom
}

2:自定义URL支持:目录级转向或自定义任意后缀转向

说明:






默认支持纯目录级URL重写转向,如果需要自定义后缀,或者只能使用指定后缀,增加或开启配置文件一行搞定:

<!--
启用带后缀Url转向
-->

<
add
key
="UrlAspx"
value
=".shtml"
/>

如何使用纯目录级URL转向?即如:http://www.cyqdata.com/cyq1162/article/detail/26

在IIS6中,需要添加通用映射扩展,网站属性-》主目录-》配置-》映射-》添加通用映射扩展

在IIS7中,好像默认支持,不需要添加映射扩展。

如果你是买了虚拟主机,不方便设置IIS,可使用默认IIS6支持的任意后缀如.shtml或.axd等。

设置之后访问路径仅是在Url结尾增加相应后缀。

3:多数据库支持:支持 CYQ.Data 框架 所支持的多种数据库

说明:






目前支持Access、MSSQL系列、Oracle等数据库,切换数据库,不用动代码,只需要更换配置文件数据库链接

<
appSettings
>

<!--
Access数据库名称[可带相对路径]
-->

<
add
key
="AccessDbNameForWeb"
value
="myspace.mdb"
/>

</
appSettings
>

<
connectionStrings
>

<!--
Access数据库链接示例
-->

<
add
name
="Conn"
connectionString
="Provider=Microsoft.Jet.OLEDB.4.0; Data Source={0}"
providerName
="System.Data.OleDb"
/>

<!--
MSSQL数据库链接示例
-->

<!--
<add name="Conn" connectionString="server=.;database=myspace;uid=sa;pwd=123456" providerName="System.Data.SqlClient"/>
-->

<!--
Oracle数据库链接示例
-->

<!--
<add name="Conn" connectionString="Provider=MSDAORA;Data Source=MySpace;User ID=sa;Password=123456" providerName="System.Data.OracleClient"/>
-->

</
connectionStrings
>

4:域名支持:支持使用二级域名开多人博客

说明:






网站支持泛解析方式访问网站如:http://cyq1162.cyqdata.com 等同于 http://www.cyqdata.com/cyq1162
同时支持使用二级使用博客如:http://blog.cyqdata.com/cyq1162

对于此支持,仅需要一行配置文件:

<!--
是否启用二级域名做为博客域名,如启用,则为myname.blog.cyqdata.com
-->

<
add
key
="Www"
value
="blog"
/>

5:子目录支持:完可以全放到子目录[虚拟目录]里运行

说明:


没办法,太穷了,只买了一个虚拟主机,主机上已放了网站了,但主机允许开子目录。
这时候,子目录也能开多人博客,配置二级域名使用,那是多省钱省力。
对于虚拟目录方式,需要加一行配置文件:

<!--
虚拟目录名称,启用虚拟目录[即子目录]建站时设置,最后一"/"不加也不影响,加了好一点
-->

<
add
VirtualPathvalue
="cyqdata/"
/

6:高性能

说明:






1:缓存提升

有很多人很关注整体性能,本博内置三级缓存:

一级缓存表结构:就那么几个表,缓存几乎不站内存

二级二缓存原始美工html:缓存原始html可省去加载html时间,大大提升速度,同时使用提取共同部分方式来截断相同的代码部分处理,性能更超越。

三级缓存页面[可配置]:允许对只需要的页面或模块做缓存,做到有的放矢,节省内存。

2:html压缩

如果你看一下html代码,你将看到没有空格换行的html,大大节省了输出的html字节大小。

7:多皮肤支持与制作

说明:


由于本人非美工专业,只能先提供一套模块,对于用户,可以自由制作皮肤,完全可以采用先制作,后补充的方式。

即:制作完html页面后,需要进行翻译的,加Key="指定ID“

既要填充相应内容的,查找相应的ID加进去即可。

完全可忽略系统提供的css皮肤和名称,不用遵守任意css名称或tag名称

具体后面会提供相应的指导文章。

8:支持自定义语言

说明:


在制作Css模块之后,可以制作自己的语言,人家中英,你可以中雷,只要稍许说明,即该掌握,不就加key="xxx"

9:技术语言隐藏

说明:


很多网站都制作成后不需望别人看出是什么语言制作的,本博客完美的URL即可隐去这一点。
没有ViewState没有aspx没有ascx没有其它标识。
也许有人会看请示头,你把IIS默认输出的请求头:网站属性-》Http头->自定义请求头->ASP.NET X-Powered-By给删了,看人家还怎么看。
一般人估计都猜不出了,高高手就略过了~~

10:无JS平台,可外挂JS

说明:


本博客目前运行在无js的平台,因此支持直接手机访问也不成问题,无需要另建wap站。

对于js,本博客将采取外挂js的方式,允许在有js时提供更为丰富的展示方式。

11:本博客采用 CYQ.Data 数据层 框架 [b][[/b][b]强大的外挂][/b]做为底层数据框架,如有需要,很方便即可扩展到其它数据库

12:支持多用户


这么重要的一点,差点忘了说了。

其它:后来再补充了......

二:本博客所支持的内围功能及演示地址

说明:


这里不做详细说明,具体演示请看:http://www.cyqdata.com/

演示版本[为上一周代码],没更新到最新,现在即将发布的是完成于昨天昨晚的。

本博客不对其DLL进行混淆加密,大伙自觉点即可,欢迎支持原创。

晚点会增加输入过滤,大伙就别着急着输入脚本影响它人浏览


三:具体下载地址

[置顶]CYQ.Data 轻量数据层之路 bug反馈、优化建议、最新框架下载

四:欢迎css高手js外挂高手


如果有css高手或js外挂高手,对本博客开发了相应的css或js外挂验证或展示,

欢迎提供原作者一份,本人在测试通过后,将为其署名在以后的新版本博客中。

最后结言:


如此有杀伤力的博客,绝无仅用,世上不多,欢迎下载,欢迎使用:

随便一放,一个自己的博客出来了

随便一放,一个多用户博客出来了

随便一放,一个能经营的平台出来了

随便一放,等我继续开发其它功能了,哈哈~~~

原文链接:
http://www.cnblogs.com/cyq1162/archive/2010/11/08/1871508.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐