当前位置: 首页 > 软件库 > 服务器软件 > HTTP服务器 >

f2e-server

专为前端打造的开发服务器
授权协议 MIT
开发语言 JavaScript
所属分类 服务器软件、 HTTP服务器
软件类型 开源软件
地区 国产
投 递 者 邓鸿彩
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

f2e-server 是基于nodejs平台的HTTP服务器,提供了基本的模板引擎以及常用的前端工具。

a nodejs based http-server with easy-template-engine and several F2E-utils

集成Node.js 环境版本下载: 百度网盘

github: https://github.com/shy2850/node-server.git/

简书文档: http://www.jianshu.com/p/a1456b95baec/

changelog: change.log

  • 安装 f2e-server : $ npm install f2e-server

  • 进入服务器根目录: $ cd node_modules/f2e-server

  • 修改hosts[windows]:$ node hosts

  • 启动f2e-server服务:$ npm start 服务启动后,会在f2e-server外层目录自动生成 conf.js 文件, 可参考修改

  • 恢复hosts[windows]:$ node hosts reset

  • 配置文件参考: nodeLib/config/conf.js

文件服务器

f2e-server 提供基本的文件服务器功能, 支持通过配置文件索引项目根目录绝对路径 【root

  • 欢迎页面配置相对root的路径 【welcome

  • 404页面配置文件绝对路径 【notFound

  • 配置是否支持文件夹目录展示 【fs_mod

  • 当前服务端口号 【port

  • 当期服务可支持最大并发链接数 【maxConnections

模板引擎

f2e-server 默认使用underscore模板, 参见 nodeLib/common/handle.js#L18

  • 默认开启模板引擎 【runJs】 以及依赖的配置 【handle

  • 关闭后很多插件功能将失效

  • 支持模板的引用和包含http://www.w3cfuns.com/blog-5443978-5399247.html

    • $include[引用片段路径]

    • $belong[当前片段被包含母版路径]

    • $[placeholder] 包含母版中标记引入片段位置

  • 模板运行时环境变量:

    • request.data: GET请求参数包装, 如 request.data.type 表示GET请求参数type的值

    • request.post: POST请求参数包装, 获取方式同GET, __ 注:GET请求时, request.post === null __

    • request.util:

    • request.$:

    • request.util.mime: f2e-server扩展mime模块

    • request.util.conf: 当前服务配置

    • request.util.staticServer: 预留staticconf配置的url

    • request.$.title: 当前请求路径 pathname

    • request.$.host: 当前host

    • request.$.fileList: 文件夹列表存储

    • request: 包转完成的当前请求

    • response: 原生的响应对象

    • require: nodejs 全局require

    • _: underscore源对象

资源合并和压缩

  • 服务器内置 uglify-js 和 cssmin 支持, 【debug】 为false时开启

  • 使用 $include 功能可以进行资源文件的动态合并

中间件支持

f2e-server采用中间件的动态解析模式, 参见 nodeLib/filter/middleware.js

  • 默认支持 less / coffee / jade / markdown 扩展,npm install后直接使用

  • 对于其他需要且未被收录的扩展, 强烈建议开发者自己尝试修改源代码支持

项目输出

  • 模板、 资源合并压缩、中间件支持(或混搭使用) 均被支持输出到结果文件目录中 【output

  • 如果安装相关图片压缩依赖的模块, build默认支持在构建输出结果时对png,jpg等类型图片进行无损压缩

  • 中间件中 在请求头设置 middleware-type 属性, 将能够在输出时, 修改响应的文件后缀名

  • 如在开发中使用响应后缀,建议参考 agent】配置

服务器host转发功能

f2e-server 支持本地环境通过不同的hosts域名分别请求不同的项目

  • nodeLib/config/conf.js 中所有返回key都被认为是一组本地域名类型 (如:localhost / test.abc.com / test.xuan.news.cn)

  • 如果多组配置使用了相同的端口号, 将需要使用指定域名访问(需要修改hosts文件)

  • 在安装目录中提供了快速修改备份/恢复 hosts文件的模块,

    • 可以直接使用 node hosts 修改 或 node hosts reset 恢复修改前的hosts文件

    • 默认使用windows环境的系统路径 (linux/unix 请根据需求修改)

    • 权限不足时,抛出异常,请使用管理员权限运行!

代理功能

f2e-server 方便的支持了代理远程请求功能 agent】配置

  • get方法通过分析请求路径,返回一组相关代理配置

    • host: 远程代理的host 默认为 当前host

    • port: 远程代理的端口号, 默认为 80

    • origin: 支持origin格式配置: 优先级低于host&port, 因为需要实时解析,性能不及host配置

    • path: 路径转换方式, 可以根据本地路径转换成远程指定其他路径, 默认跟远程路径相同

    • cookie: 远程代理cookie ( 直接copy远程请求的请求头中的cookie )

    • save: 代理请求资源保存到本地对应文件目录 ( 资源批量下载以及中间件模板编译 )

插件功能

f2e-server 提供了一些有用的插件, 提倡开发者扩展

  • agent: 快速代理跨域请求如 /agent?http://news.cn

  • build: 即项目输出

  • config: 临时修改当前服务配置项[Beta版]

  • favicon.ico: 单独进行favicon.ico实现

  • prettify: 代码的服务端highlight实现, 支持远程请求同agent插件 /prettify?http://news.cn

  • psd: 读取服务器目录下的psd文件并且实时转化成png, 展示到浏览器中, 同时支持了解析PSD源资源数据,分别保存成png图片(Beta)

  • upload: post请求处理使用该模块实现(支持文件上传)

 相关资料
  • 用 Groovlet 和 GSP 进行动态服务器端编程 Groovlet 和 GroovyServer Pages(GSP)框架都是建立在 Java Servlet API 基础之上。不过,与 Strut 和 JSF 不同,Groovy 的服务器端实现不意味着适用于所有情况。相反,它提供了一种快速而又方便地开发服务器端应用程序的简化方法。下面请跟随 Groovy 的鼓吹者 Andrew Glove

  • SRS不支持服务器端脚本,所谓服务器端脚本,指的是服务器可以加载外部脚本文件,解释并执行。 支持服务器脚本的服务器有FMS,语言是actionscript1.0;nginx支持的是lua。 SRS不支持服务器脚本的原因有: 不Simple:违反了SRS(Simple RTMP Server)的第一个S,支持扩展脚本,出错的几率也扩展了。 实际用处很小:我在国内知名的CDN公司工作时,所在部门就是用

  • 我们研究了页面生命周期以及页面如何包含各种控件。 页面本身被实例化为控制对象。 所有Web表单基本上都是ASP.NET Page类的实例。 页面类具有以下与内部对象对应的非常有用的属性: Session Application Cache Request Response Server User Trace 我们将在适当的时候讨论这些对象。 在本教程中,我们将探索Server对象,Request对

  • 1. 自我介绍 2. 问玩过神马游戏 3. 巫师三昆特牌玩的多吗哈哈哈哈 4. 介绍多级缓存 5. 缓存一致性问题 6. 分布式缓存轮子的节点配置问题 7. 如何保证缓存的强一致方案 8. 二叉树的最大深度(迭代和递归两种方法) 这次面试聊天占大多数,是hr和二面面试官一起面的,后面说如果进来了可以自己选方向(后台或服务端) ----------------------------- 8.2更新

  • 服务端专题图是由服务器进行专题图的制作,即客户端向服务器发送专题图参数,如数据集名称、风格等,服务器根据参数制作专题图,返回给客户端,由客户端进行展示。 以点密度专题图为例。 点密度专题图用一定大小、形状相同的点表示现象分布范围、数量特征和分布密度。点的多少和所代表的意义由地图的内容决定。点密度专题图使用点的数目或者密集程度来反映一个区域或范围所对应的专题值。 //实例化点密度专题图 var th

  • Web 前端应用开发-服务调用 获取 App Key 和 App Secret 查看服务和 API 详情 安装 SDK 示例代码 注意事项 Web 前端应用开发-服务调用 更新时间:2018-07-03 19:56:11 介绍如何在 Web 前端应用中调用服务 获取 App Key 和 App Secret 查看开发环境 App Key & App Secret: 查看服务和 API 详情 点击“