如何使用网页上的富文本编辑器

开篇

很多朋友在学生在线新闻站投稿或者在论坛发帖的时候常常被编辑器搞得晕头转向。

 

问题主要集中在:

  1. 为什么 Word 粘贴进去的文本格式都变了?
  2. 为什么 Word 里的图片不能粘贴进去?
  3. 为什么我编辑器里看到的格式,到了网页上会变?

 

这里我就写一篇教程,集中回答下一下问题。

悲催的 Godaddy,万恶的 GFW

前段时间帮别人买虚拟主机,公司,不差钱。

第一个想到的肯定是 Godaddy,第二个想到的还是 Godaddy…

没办法,无论是服务还是品质,它都比国内的好多了~

 

于是,Happy 地买了 Economy 4GH 虚拟主机,一年只要 48$,折合人民币 312¥

买完以后!悲剧的事发生了!分配到的 IP 竟然被墙了!

 

特写下解决方案:

UCenter API For .Net 在 CodePlex 上发布啦!

目录:

  1. 开篇
  2. 通讯原理:UCenter API 与子站之间的通讯原理和单点登陆原理
  3. 加密与解密:AuthCode详解 & AuthCode函数翻译过程中的注意点
  4. 网站搭建: 康盛旗下网站 & Asp.net 网站搭建
  5. MVC 网站下的用法:在 MVC 下的使用方法
  6. 下载地址:UCenter API For .Net 在 CodePlex 上发布啦!

 

项目地址:http://ucenterapidotnet.codeplex.com/

欢迎感兴趣的人加入一起开发!

另外,鉴于 Github 那么火,我已经将项目转移到 Github 上了,如果有同学想一起开发,请联系我。

项目地址:https://github.com/dozer47528/UCenter-API-For-DotNet

 

另外广告一下,代码免费用,但是如果需要企业级别的架设,可以联系我!

新版学生在线首页所用到的技术

前言

为了方便以后的工作室成员修改或重写学生在线首页,特在此写下新版首页概况

 

框架篇

整体框架:三层架构 + MVC

学习方法:博客园ASP.NET MVC 技术专题微软官方 MVC 网站

 

数据库:Entity Framework

学习方法:微软官方 EF 网站博客园搜索 Entity Framework

学前知识点:委托,匿名委托,Lambda 表达式,Linq,Sql Server 基础知识

深入研究 UCenter API 之 MVC 网站下的用法


目录:

  1. 开篇
  2. 通讯原理:UCenter API 与子站之间的通讯原理和单点登陆原理
  3. 加密与解密:AuthCode详解 & AuthCode函数翻译过程中的注意点
  4. 网站搭建: 康盛旗下网站 & Asp.net 网站搭建
  5. MVC 网站下的用法:在 MVC 下的使用方法
  6. 下载地址:UCenter API For .Net 在 CodePlex 上发布啦!

 

MVC 网站下的用法

前一段时间在 MVC 的网站中使用了自己的 UCenter API

但是出现了一个问题:

MVC 下可以建立静态文件,路由的时候如果存在静态文件则直接访问,包括 aspx, asxh 等文件。

像原来一样,建立了 uc.ashx 文件,但是在使用的时候却出现了一个问题:无法访问 Session

HttpContext 里的 Session 对象是 null

就算继承了 IRequiresSessionStat 接口后还是一样

学生在线更新了什么?

新的学生在线

相信大家都发现学生在线悄悄改版了,那么这次改版我们更新了什么呢?

 

IPV6

矿大的 IPV6 部署还是非常给力的,我们也看到了新的机会~

学生在线也拥有了自己的 IPV6 域名: http://online.cumt6.edu.cn

其实这个域名和以前的域名 http://online.cumt.edu.cn 指向的是同一个网站

 

而 IPV6 和 IPV4 都是属于网络层的,也就是说,它们的更改理论上不会影响网站的访问。

事实上也的确如此,这个就像一个网站绑定个两个域名一样,没有什么影响。

 

但唯一的问题是,当用 IPV6 访问的时候,所有的页面链接都要变,而“首页”是个内容聚集的页面,上面的链接大多不是内部链接,都是指向别的网站的链接,所以很多链接都是绝对链接,而不是相对链接。这就导致了在 IPV6 下很多链接会失效(而事实上它们是有 IPV6 地址的)

Windows 下 Php 网站 Temp 文件夹的权限问题

服务器抽风…

前几天不知为何,服务器抽风严重…

远程连接非常慢,然后论坛 Discuz 程序的进程 CPU 占用率居高不下(IIS7.5 下挂 Php 程序,并且自建了应用程序池)

 

排查过程

  1. 检查网页服务器,病毒,木马?是否被入侵?
  2. 检查数据库服务器,CPU,内存,网络一切正常,相应的端口也做了 IP 限制,只允许网页服务器访问,查看日志文件也没有异常情况
  3. 检查其余的 .Net 网站,速度正常,没有任何问题
  4. 检查其余的 Php 网站,架构方法一样,也没有任何问题(其余的 Php 网站访问量相对于论坛来说小很多)
  5. 新建一个应用程序池和网站应用程序,引用的论坛(文件系统相同),单人访问速度没有问题,说明 Discuz 程序没有问题
  6. 检查 Php 设置,发现没有异常

Windows 下 SVN 环境的搭建

SVN 是什么?

SVN(Subversion) 是近年来崛起的版本管理工具,是 CVS 的接班人。目前,绝大多数开源软件都使用 SVN 作为代码版本管理软件。

版本控制是程序员必备的工具,SVN 是目前的最佳选择。

 

为什么不用 CVS?

SVN是其替代品,优于 CVS

 

为什么不用其他产品?

这类产品都没有相互兼容性,例如 Team Foundation Server 只能和 Visual Studio 配合使用,或者安装其专门的工具。

而 SVN 更像是一种协议,只要遵守它的协议,就可以开发出对应的产品,例如 Visual Studio 插件。

jQuery UI CSS Framework 文档 翻译

jQuery UI CSS Framework

jQuery UI 包含一个强大的 CSS 框架来帮助我们设计 jQuery 小部件,这个框架包含了许多普通用户经常会用到的 class,并且还可以利用 jQuery UI 主题编辑器来方便地修改主题。当你在使用 jQuery UI CSS 框架来构建你网站的 UI 时,你必须要遵守一些约定,这样才能更好地使用 jQuery UI  CSS 框架。

 

Framework Classes

一下的几个 class 分别在 ui.core.css 和 ui.theme.css 文件中,你可以直接下载一个完整的 css 文件,也可以几个部分。

这些类保证了构建 UI 的一致性和快速性,而它们的外观主要取决于你的主题样式。

[翻译] jQuery UI CSS Framework - Part1:Intro and How To Style a Button

原文链接:传送门

 

本文是 jQuery UI CSS Framework 系列文章的第一篇,这是一套强大的 CSS 选择器,你可以使用它来构建一套统一界面的 Web 应用程序。jQuery UI 的 DEMO 页面演示了很多 UI 部件(当然和 ExtJS 等比起来还是有差距的~),但是相对于你以前的工作方式和别的 UI 组件,它还是能帮到你许多的。这里,我们将解释一下这个框架,讲解一下它的优缺点,并用一个例子(一个 Button 的例子)来演示一下。

 

什么是 jQuery UI CSS Framework ?

它是一套复合 jQuery UI 标准部件集的 CSS 选择器,可以很有效地帮助你设计自己的网页。

传送门:官方文档 http://docs.jquery.com/UI/Theming/API

MVC 下导航高亮的完美解决方案

前言

导航高亮一直是一个让大家头疼的问题。

 

纯 Javascript 的话可以判断当前页面的地址和链接地址是否有关系。

这样的弊端就是自由度太低,MVC 下会出一定的问题 (MVC 下有默认的 Controller 和 Action)

 

另一种方案是前端后端结合,为每一张页面设置一个属性,然后在页面中判断。满足条件便高亮。

这样的弊端就是,需要为你所有的页面设置属性,非常麻烦!

 

那么有没有什么完美的解决方案?一劳永逸的?

那些 WebForm 可以从 MVC 借鉴的东西 —— MVC

前言

WebForm 可以从 MVC 中借鉴 MVC?放心,这并不是病句~

此 MVC 非彼 MVC!

MVC 其实是 Model, View, Controller 的意思,它是一种思想~

维基百科的解释:传送门

那些 WebForm 可以从 MVC 借鉴的东西 —— Routing

前言

最近 MVC 一直很火,我在做项目的时候也一直想用 MVC 做,但是考虑到传承问题(不是所有人都回去学 MVC 的),最后还是没有使用 MVC。

但是虽然不用 MVC,MVC 中很多好的思想还是可以借鉴的!

所以给大家介绍一些可以从 MVC 借鉴的东西。

 

Routing

Routing,MVC 中的路由功能,和 Url 重写类似,但是更高层一点~

 

Routing 的好处:

  1. 方便地进行 Url 重写
  2. 方便地获取页面的真实地址(防止网站挂在应用程序下后的地址错误)

关闭鸡肋功能,彻底清理C盘

前言

网上有很多管理清理C盘的教程,但是大多是讲的都是何如清理垃圾,而这些垃圾一般是会再次生成的,作用并不明显。

那就没有别的办法清理C盘了吗?

答案是否定法的,其实 Windows 中存在着大量的鸡肋功能,简单的几步,就可以让你的C盘腾出至少5G的空间(Vista & Windows7 主流配置)

而且一下的几个小技巧数量不多,但各个都是重量级的。

比上面那些弄了半天,才腾出几G的办法有效多了。

而且还不会反弹哦~

 

此文仅仅针对 Vista & Windows7 操作系统

深入研究 UCenter API 之 网站搭建

目录:

  1. 开篇
  2. 通讯原理:UCenter API 与子站之间的通讯原理和单点登陆原理
  3. 加密与解密:AuthCode详解 & AuthCode函数翻译过程中的注意点
  4. 网站搭建: 康盛旗下网站 & Asp.net 网站搭建
  5. MVC 网站下的用法:在 MVC 下的使用方法
  6. 下载地址:UCenter API For .Net 在 CodePlex 上发布啦!

 

康盛旗下产品的搭建

1、UCenter

这个当然是最基本的东西,安装起来也很简单,官方就有教程

http://faq.comsenz.com/userguide/x/install.html

ucenter_success

安装完成后,因为还没有安装别的应用,所以应用数量是:0

深入研究 UCenter API 之 加密与解密

目录:

  1. 开篇
  2. 通讯原理:UCenter API 与子站之间的通讯原理和单点登陆原理
  3. 加密与解密:AuthCode详解 & AuthCode函数翻译过程中的注意点
  4. 网站搭建: 康盛旗下网站 & Asp.net 网站搭建
  5. MVC 网站下的用法:在 MVC 下的使用方法
  6. 下载地址:UCenter API For .Net 在 CodePlex 上发布啦!

 

AuthCode

UCenter API 中的加密解密函数,被称为 php 领域的经典之作,也是康盛公司为 php 做的一大贡献

这个函数,可以通过一个 KEY ,生成动态的密文,并可以再通过这个 KEY 来解密

我没有研究过什么加密算法,所以对这个的基础知识也不是很了解,或许在 C# 中会有更强大的算法,但是这个函数在做 UCenter API 的时候是必需的。

也是 UCenter API php 版翻译成 C# 版本中最难的一个部分。

深入研究 UCenter API 之 通讯原理

目录:

  1. 开篇
  2. 通讯原理:UCenter API 与子站之间的通讯原理和单点登陆原理
  3. 加密与解密:AuthCode详解 & AuthCode函数翻译过程中的注意点
  4. 网站搭建: 康盛旗下网站 & Asp.net 网站搭建
  5. MVC 网站下的用法:在 MVC 下的使用方法
  6. 下载地址:UCenter API For .Net 在 CodePlex 上发布啦!

 

UCenter 通讯基本原理

UCenter和各个子站的通讯,主要就是通过 POST 的方式调用而已,没有什么技术含量。

ucenterapi

表单参数都是经过 Base64 算法,加一个通信密钥进行加密和解密的。

返回的数据是单个参数(例如:0或者1),也可能是xml序列化后的数据。

例如一个请求:code=e145fscn314BSKnwxBvqLaQe2yrHJAnKO1M%2B8C4cAKQAtRRQfEqTh8mg665UVJPyrJIrPhDNnEM

解密后:action=test&time=1295631663

返回:1

以上是一个测试是否通讯成功的请求,上面是表单参数,解密的明文如上,返回1代表通讯成功!

深入研究 UCenter API 之 开篇

目录:

  1. 开篇
  2. 通讯原理:UCenter API 与子站之间的通讯原理和单点登陆原理
  3. 加密与解密:AuthCode详解 & AuthCode函数翻译过程中的注意点
  4. 网站搭建: 康盛旗下网站 & Asp.net 网站搭建
  5. MVC 网站下的用法:在 MVC 下的使用方法
  6. 下载地址:UCenter API For .Net 在 CodePlex 上发布啦!

 

**
**

既然说是开篇,那就先说点别的吧~

 

Discuz 的强大的大家有目共睹的,现在又被腾讯收购,不知道以后会不会发展地更强大!

Discuz 算是很开放的吧(对php程序员而言)

因为它的核心产品 UCenter(用户中心)对外的 API 很强大,可以很方便地实现例如同步登陆,短信息,等功能,而且还有一份非常详细的文档和源码!

MacType!让Windows下的字体渲染效果超越MAC!

基础知识:图形设备接口(GraphicsDeviceInterface)

GDI是Graphics Device Interface的缩写,含义是图形设备接口,它的主要任务是负责系统与绘图程序之间的信息交换,处理所有Windows程序的图形输出。

在Windows操作系统下,绝大多数具备图形界面的应用程序都离不开GDI,我们利用GDI所提供的众多函数就可以方便的在屏幕、打印机及其它输出设备上输出图形,文本等操作。GDI的出现使程序员无需要关心硬件设备及设备驱动,就可以将应用程序的输出转化为硬件设备上的输出,实现了程序开发者与硬件设备的隔离,大大方便了开发工作。

GDI具有如下特点:

  1. 不允许程序直接访问物理显示硬件,通过称为“设备环境”的抽象接口间接访问显示硬件;

  2. 程序需要与显示硬件(显示器、打印机等) 进行通讯时,必须首先获得与特定窗口相关联的设备环境;

  3. 用户无需关心具体的物理设备类型;

  4. Windows参考设备环境的数据结构完成数据的输出。

玩转Windows

这是一份花了我50多个小时才制作完成的精美PPT

里面包含了大量Windows技巧

 

这份PPT是为讲座而准备的,事实上,它更适合直接浏览,因为里面有非常详细的操作步骤

希望大家能喜欢!