UEditor ASP.NET 后台使用说明
=====
## 背景
UEditor 在 1.4 版本之后进行了一次[前后端统一配置](../_doc/3.1 后端请求规范.md)的整理,.Net 的后台也进行了一次重写,跟之前的版本差别较大,升级的用户注意阅读本文档。
本文档介绍 UEditor ASP.NET 后台的部署、配置、源码说明。
## 1. 部署说明
### 1.1. 安装并注册 .NET Framework 4.0
代码的运行时环境是 .NET Framework 4.0,首先要确认 IIS 已经安装了 .NET 4.0 的运行时框架。方法是打开「IIS 管理器」,选择根目录下的「应用程序池」,在右侧查看是否有一个应用程序池的版本是 v4.0,如果存在,则 IIS 已经安装了所需的运行时环境,此时读者可以跳过本节。
![检查 .NET 4.0 安装情况](../_doc/images/net-publish-1.png)
如果没有找到对应的应用程序池,需要手动安装。
Windows 7 和 Windows Server 2008 R2 默认安装了 .Net Framework 4.0,如果是 Server 03 和老掉牙的 Windows XP,则需要手动安装 [.NET Framework 4.0](http://www.microsoft.com/zh-cn/download/details.aspx?id=17718)。
安装完 .NET Framework 4.0 后,还需要向 IIS 注册应用程序池,注册的方法是,使用**管理员权限**打开命令提示符(CMD),输入以下命令:
```shell
C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis -i
```
安装完毕后,在 IIS 管理器刷新就能看到 4.0 的应用程序池。
### 1.2. 设置 .NET 应用程序
代码要求以应用程序的形式来运行(可以方便加入库依赖和组织代码)。需要把 `net` 目录转换为应用程序。
1. 在 IIS 中,展开到 `ueditor/net` 目录,在目录上右击,点击「转换为应用程序」。
![转换为应用程序](../_doc/images/net-publish-2.png)
2. 弹出的对话框中,点击「选择...」来指定使用的应用程序池。选择版本为 4.0 的应用程序池,然后点确定。
![选择应用程序池](../_doc/images/net-publish-3.png)
3. 设置连接凭据。点击「链接为...」按钮,在弹出的对话框中指定一个对目录具有读写权限的用户(如 administrator),然后点确定。
![设置连接凭据](../_doc/images/net-publish-4.png)
设置完毕后,可以点击「测试设置...」来测试权限是否正常。
![设置连接凭据](../_doc/images/net-publish-5.png)
### 1.3. 运行测试
在浏览器中运行 `net/controller.ashx`,如果返回 "`{"state":"action 参数为空或者 action 不被支持。"}`",则表示应用程序运行成功。
如果你确认上述步骤已经执行,但是依然有问题,请给我们[提 Issue](https://github.com/fex-team/ueditor/issues/new?labels=NET%E5%90%8E%E5%8F%B0),我们会尽快答复解决。
## 2. 配置说明
前后端配置统一之后,配置文件由后台读取,返回给前端。但是部分配置是给后台使用的。
### 2.1. 上传配置说明
关于上传的部分,后台需要关心以下模板的配置项。
```json
{
"{tpl}FieldName": "upfile",
"{tpl}PathFormat": "upload/{tpl}/{yyyy}{mm}{dd}/{time}{rand:6}",
"{tpl}UrlPrefix": "/ueditor/net/",
"{tpl}AllowFiles": [".png", ".jpg", ".jpeg", ".gif", ".bmp"],
"{tpl}MaxSize": 2048000
}
```
"{tpl}FieldName" 表示提交的表单的文件域名称。
"{tpl}PathFormat" 表示上传文件保存的路径和名称。注意,这里的路径是相对应用程序的,如果需要修改的话,请自行修改源码。
"{tpl}UrlPrefix" 表示上传文件访问的 URL 前缀。注意,这里应该给出应用程序的 URL 路径,否则上传的文件不能正确定位。
> 举个例子,如果你的 UEditor 的位置在 `http://www.mydomain.com/myapp/ueditor`,对应的本地路径是 `C:\iis_pub\www\myapp\ueditor`,那么 .NET 应用程序的位置在 `http://www.mydomain.com/myapp/ueditor/net`,对应的本地路径是 `C:\iis_pub\www\myapp\ueditor\net`。图片上传配置项应该如下:
>
> {
> "imagePathFormat": "upload/image/{yyyy}{mm}{dd}/{time}{rand:6}",
> "imageUrlPrefix": "/myapp/ueditor/net/",
> }
>
> 上传的文件会保存在 `C:\iis_pub\www\myapp\ueditor\net\upload\image\{日期}\{文件名}`
"{tpl}AllowFiles" 限制文件上传的类型,注意要有 "."。
"{tpl}MaxSize" 限制文件上传的大小。注意这里的限制是代码上的判断,应用程序本身还有一个请求报文大小限制。该限制在 web.config 文件中修改,注意要有以下的节:
```xml
<configuration>
<system.web>
<httpRuntime requestValidationMode="2.0" maxRequestLength="102400" />
</system.web>
</configuration>
```
maxRequestLength 就是请求报文大小限制,该大小应该要比设置的所有上传大小都大,否则应用程序执行之前,请求会被被拒绝。
## 3. 源码说明
可以看到 net 目录内的源码结构是这样的:
```
net
App_Code
Config.cs
Handler.cs
PathFormatter.cs
*Handler.cs
Bin
Newtonsoft.Json.dll
config.json
controller.ashx
net.sln
README.md
Web.config
```
App_Code 上的文件是应用程序的源码。
- Config.cs 负责读取配置文件
- Handler.cs 是请求处理器的基类,提供了一些基本对象的访问以及输出控制。如果需要增加处理器,应该从该基类继承
- PathFormatter.cs 解析 PathFormat,把信息填充为运行时信息。
- *Handler.cs 是各种处理器,处理各种 UEditor 需要的请求。
Bin 里面的是应用程序的依赖库,当前依赖 Newtonsoft 的 Json 库。Bin 目录和 App_Code 目录受应用程序保护,不用担心被用户访问到。
config.json 是 UEditor 后端的配置文件,上一节已经介绍了比较重要的配置项。
controller.ashx 是 UEditor 请求的入口,它把不同的 action 分发到不同的 Handler 来处理。
net.sln 是项目的解决方案文件,安装 Visual Studio 2013 或以上的机器可以打开进行项目的改造。
README.md 是本说明文件。
Web.config 是应用程序的配置文件。
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
java期末大作业-基于JavaWeb的火车站售票系统源码+数据库+详细文档说明,个人大三学期的期末大作业、经导师指导并认可通过的高分大作业设计项目,评审分98分。主要针对计算机相关专业的正在做大作业的学生和需要项目实战练习的学习者,可作为课程设计、期末大作业。 java期末大作业-基于JavaWeb的火车站售票系统源码+数据库+详细文档说明,个人大三学期的期末大作业、经导师指导并认可通过的高分大作业设计项目,评审分98分。主要针对计算机相关专业的正在做大作业的学生和需要项目实战练习的学习者,可作为课程设计、期末大作业。java期末大作业-基于JavaWeb的火车站售票系统源码+数据库+详细文档说明,个人大三学期的期末大作业、经导师指导并认可通过的高分大作业设计项目,评审分98分。主要针对计算机相关专业的正在做大作业的学生和需要项目实战练习的学习者,可作为课程设计、期末大作业。java期末大作业-基于JavaWeb的火车站售票系统源码+数据库+详细文档说明,个人大三学期的期末大作业、经导师指导并认可通过的高分大作业设计项目,评审分98分。主要针对计算机相关专业的正在做大作业的学生。
资源推荐
资源详情
资源评论
收起资源包目录
java期末大作业-基于JavaWeb的火车站售票系统源码+数据库+详细文档说明 (1290个子文件)
controller.ashx 3KB
TrainDaoImpl.class 7KB
AlipayServlet.class 6KB
PrepDaoImpl.class 6KB
TrainServiceTest.class 5KB
BookingServlet.class 5KB
AdminDaoImpl.class 5KB
TrainDaoTest.class 5KB
MemberDaoImpl.class 4KB
TrainServiceImpl.class 4KB
GetByStartEndStationServlet.class 4KB
Prep.class 4KB
PmemberDaoImpl.class 4KB
UpdateTrainServlet.class 4KB
PrepDaoTest.class 4KB
Train.class 4KB
AddMemberServlet.class 3KB
MemberLoginServlet.class 3KB
RegMemberServlet.class 3KB
PrepServiceTest.class 3KB
AddTrainServlet.class 3KB
PrepServiceImpl.class 3KB
Admin.class 3KB
UpdatePrepAdminServlet.class 3KB
UpdateMemberAdminServlet.class 3KB
Member.class 3KB
PayServlet.class 3KB
PmemberServiceImpl.class 3KB
AddAdminServlet.class 3KB
ChangePrepServlet.class 3KB
UpdatePmemberAdminServlet.class 3KB
UpdateAdminPassword.class 2KB
UpdateMemberPasswordServlet.class 2KB
GetPmemberByMemberIdServlet.class 2KB
JDBCUtil.class 2KB
DeleteMemberAdminServlet.class 2KB
DeletePrepServlet.class 2KB
MemberServiceImpl.class 2KB
AdminServiceImpl.class 2KB
MyPrepServlet.class 2KB
CountPrepServlet.class 2KB
UpdatePmemberServlet.class 2KB
Pmember.class 2KB
UpdatePrepServlet.class 2KB
PmemberServiceTest.class 2KB
DeleteTrainServlet.class 2KB
DeletePrepAmdinServlet.class 2KB
AdminServiceTest.class 2KB
GetPmemberByPmemberIdServlet.class 2KB
EncodingFilter.class 2KB
GetAllTrainServlet.class 2KB
MemberCenterServlet.class 2KB
AdminDaoTest.class 2KB
MemberSessionListener.class 2KB
GetMyMemberServlet.class 1KB
GetAdminByUserName.class 1KB
MemberServiceTest.class 1KB
GetAllPrepServlet.class 1KB
MemberLoginOutServlet.class 1KB
MemberDaoTest.class 1KB
TrainDao.class 923B
TrainService.class 805B
DateUtil.class 733B
PrepDao.class 607B
ShowPrep.class 595B
MemberDao.class 519B
PrepService.class 519B
AdminDao.class 501B
MemberService.class 455B
AdminService.class 443B
PmemberDao.class 400B
PmemberService.class 322B
.classpath 2KB
org.eclipse.wst.common.component 479B
Web.config 462B
org.eclipse.wst.jsdt.ui.superType.container 49B
UploadHandler.cs 5KB
CrawlerHandler.cs 3KB
ListFileHandler.cs 3KB
PathFormater.cs 2KB
Handler.cs 1KB
Config.cs 1KB
NotSupportedHandler.cs 477B
ConfigHandler.cs 348B
H-ui.css 207KB
H-ui.min.css 149KB
ueditor.css 45KB
ueditor.min.css 34KB
video-js.css 22KB
image.css 19KB
iconfont.css 17KB
video.css 15KB
attachment.css 15KB
iconfont.min.css 14KB
layer.css 14KB
common.css 13KB
webuploader.css 11KB
video-js.min.css 11KB
H-ui.admin.css 7KB
shCoreDefault.css 7KB
共 1290 条
- 1
- 2
- 3
- 4
- 5
- 6
- 13
资源评论
猰貐的新时代
- 粉丝: 1w+
- 资源: 2545
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功