名称自解释。
mini-httpd 是一个奉行极简主义的Web Server,重在服务器性能和高度安全性,并使用尽可能少的系统资源。
特点:
1. HTTP/1.1 compliant "keep-connection" support.
2. Virtual hosting.
3. Recording all successful requests in the common Apache-style log-file format.
4. The ability to run in a chroot(2) sandbox.
5. Dropping all super-user privileges after acquiring the listening socket.
6. mini-httpd is configured entirely through the command line. There is no config file.
mini-httpd 之提供服务硬盘静态页面功能,不支持CGI和其它动态页面生成功能。
因为 LINUX 主机的进程组策略,完全严格的 Daemon 进程无法写终端。 当一个进程既不是它自身的父进程,同时它也不是组长进程的时候,它就是严格的的 daemon 进程。 mini_httpd 本身并不是严格的 daemon 进程。它是一个组长进程。 但是 mini_httpd 调用的 cgi 进程,就不是组长进程,它是 mini_httpd 进程组中的一个进程。 所以 cgi 在获
1、下载:http://www.acme.com/software/mini_httpd/mini_httpd-1.19.tar.gz 2、解压:tar zxvf mini_httpd-1.19.tar.gz 3、编译,安装:cd mini_httpd-1.19 make ma
main函数分析; 一,参数设置: 读取命令行参数 配置文件参数 读取参数,设置对应的全局变量。主要参数有:配置文件;资源目录;进程ID文件;日志文件;字符集;主机名及端口号... 二,参数处理:重点分析,主机名及端口号,damon 1,主机名及端口号 解析主机名,获取对应IP地址,初始化监听套接字(包括:socket,bind,listen)
version.h #define SERVER_SOFTWARE "mini_httpd/1.21 18oct2014" #define SERVER_URL "http://www.acme.com/software/mini_httpd/" port.h #define OS_linux #define ARCH_linux # define HAV
一、铺垫 http协议即超文本传输协议,我们在使用浏览器访问服务器的时候就是使用它,在传输层使用tcp协议,网络层使用ip协议,那么通过http协议到底是如何完成对服务器的访问从而将页面显示出来或者将数据提交到服务器进行处理的呢,这里就涉及httpd。 注:以下只是对httpd运行原理以及设计思想的理解,对http报头我也不是特别清楚,见谅! 二、httpd主函数都做了什么
/* version.h - version defines for mini_httpd */ #ifndef _VERSION_H_ #define _VERSION_H_ #define SERVER_SOFTWARE "mini_httpd/1.21 18oct2014" #define SERVER_URL "http://www.acme.com/software/mini_htt
shell下 创建一个目录:cd /usr/src/redhat/SOURCES 在这个目录下shell里下载工具:wget http://www.acme.com/software/mini_httpd/mini_httpd-1.21.tar.gz 下载后tar -xvf 解压 进入生成的mini_httpd-xxx目录, make
1、下载:http://www.acme.com/software/mini_httpd/mini_httpd-1.19.tar.gz 2、解压:tar zxvf mini_httpd-1.19.tar.gz 3、编译,安装:cd mini_httpd-1.19 a、修改:Makefile 把CC=GCC 改成CC = arm-none-linux-g
1 mini_httpd简介 mini_httpd是常用的嵌入web服务器,可以支持http,https。我就是因为需要支持https,所以进行了移植。 2.安装编译 2.1. 首先在mini_httpd-1.19目录下查看README,但是没有编译的流程说明,不按套路出牌,有makefile,那就直接make吧。 2.2. make 编译可能报错getline啥的....
//字符串匹配,匹配返回 1,否则返回 0. //pattern可以通过任意个 | 字符,组合match_one中pattern的功能 int match(const char* pattern, const char* string) { const char* or; for (;;) { or = strchr(pattern, '|');
针对不同系统的宏定义,对于Linux而言 /* port.h - portability defines */ #elif defined(linux) # define OS_Linux # define ARCH "Linux" #ifdef OS_Linux # define HAVE_DAEMON # define HAVE_SETSID # define HAVE_WAITPID #
///关联字符串和整数 struct strlong { char* s; long l; }; ///将字符串中的大写字母转换成小写字母 static void pound_case(char* str) //比较stlong类型中字符串*s,用strcmp比较 static int strlong_compare(const void* v1, const void* v2
Apache HTTP Server(简称Apache或httpd)是Apache软件基金会的一个开放源代码的网页服务器软件,旨在为unix,windows等操作系统中提供开源httpd服务。由于其安全性、高效性及可扩展性,被广泛使用,自1996年4月以来,Apache一直是Internet上最流行的HTTP服务器。在这里我们只用作一个可支持文件上传下载的http文件服务器使用。(工作要求临时搭建
一、简介 目的:构建小型WEB站,具备SSL,解析PHP脚本(适用嵌入式环境)。 mini_httpd is a small HTTP server. Its performance is not great, but for low or medium traffic sites it's quite adequate. It implements all the basic features
如何让mini_httpd支持php 那天听清茶说再搞mini_httpd,可是cgi跑不起来,反正我那天也有空,所以自己也下载了一个mini_httpd玩玩. (把过程写下来,让有类似需求的兄弟少走弯路, 嘿嘿,还有就是自己比较的健忘~~~) 下载代码,解压缩,然后 make make install 呵呵,很顺利,很方便 (看看版本: /usr/local/sbin/mini_httpd -V
Dolphin Mini——全功能轻量级的Android设备浏览器,现在已经可以在Android市场(Android Market)免费下载了。除了容易找到并安装,这个小程序还有很多的新特性。新增的扩展有设置的备份与还原,书签标签以及地址栏的按住不放选项(保存到 书签,分享,保存当前网页或者复制/粘贴一个URL)。Dolphin Mini还在工具箱增加了临时文件清理图标。 支持的Flash Pla
mini-vue 实现了一个最简化的 vue3 模型,可用于深入学习 vue3, 更轻松地理解 vue3 的核心逻辑。 vue3 这种工业级别的库,源码中很多逻辑是用于处理边缘情况或者是兼容处理逻辑,不利于初学者学习源码。而 mini-vue 库把 vue3 源码中最核心的逻辑剥离出来,只留下核心逻辑,可帮助开发者更好地理解 Vue3 的核心逻辑。 实现过程 mini-vue 基于 vue3 的功
Mini-XML 是一个小型的XML解析器,采用 C 语言开发。该解析器最大的特点就是小型、无须依赖其他类库,只需要 GCC 编译器 和 make 程序即可编译,支持 UTF-8/UTF-16 编码。 要使用 Mini-XML 只需要引入 #include <mxml.h> 编译方法:gcc -o myprogram myprogram.c -lmxml 示例代码: FILE *fp; mxml_
XX-Mini 软件说明 源码取自 XX-Net 项目,精简 web UI、php_proxy 以及 x_tunnel 等功能,只保留 gae_proxy 以及自动扫描IP功能。 用户数据保存到 data 目录,运行软件后会自动生成,支持 manual.ini 配置文件,自定义IP段 ip_range.txt。 代码为 Linux 版本,欢迎提交 commit,提交代码后一段时间内会同步到 Win
PandaBoard Mini 是西安小风车电子推出的开源硬件平台,它采用 TIOMAP4460 做为主处理器,是 OMAP4 开发板 PandaboardES 的增强版本。它在硬件上与 PandaboardES 是兼容的,并且做了扩充,比如增加了 8G emmc, 3G miniPCIE 接口,摄像头接口增加到了 2 路,但价格却比 PandaboardES 低得多。 选择开源硬件平台,一个重要
流行框架与库的源码分析与最简实现 大家好,我是山月,这是我新开的一个坑:手写源码最小实现,每一行代码都有注释。 当我们在深入学习一个框架或者库时,为了了解它的思想及设计思路,也为了更好地使用和避免无意的 Bug,源码研究是最好的方法。 对于 koa 与 vdom 这种极为简单,而应用却很广泛的框架/库,莫不如是。为了验证是否已足够了解它,可以实现一个仅具备核心功能的迷你的库。正所谓,麻雀虽小,五脏