一.软件准备 1.下载HttpServer :HttpServer.zip HttpServer是一款windows平台下基于IOCP模型的轻量级.高并发.高性能web服务器(参见文章). 2.下载Windows版本PHP(绿色版本无需安装,解压即可),建议用迅雷下载速度更快 版本1:php-5.2.16-nts-Win32-VC6-x86.zip 版本2:php-7.0.15-nts-Win32-VC14-x86.zip 二.配置PHP FastCGI 1.解压PHP到指定目录,如 D:/ph…
本文建立在已经搭建好DNS服务器时,为linux机器配置DNS服务器的三种方式. IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址.DNS(域名解析)就是域名到IP地址的转换过程. 在linux配置DNS的解析服务器位置有三种方法,配置完成后就可以自动解析了. 本地hosts 修改本地hosts文件,利用hosts自动解析域名到ip,此方法也适用于windows,只不过windows的位置于C:\WINDOWS\system32\drivers\etc\hos…
个人总结: 1.长连接机制——分清Websocket,http2,SSE: 1)HTTP/2 引进了 Server Push 技术用来让服务器主动向客户端缓存发送数据.然而,它并不允许直接向客户端程序本身发送数据.服务端推送只能由浏览器处理而不能够在程序代码中进行处理,意即程序代码没有 API 可以用来获取这些事件的通知. 2)通过SSE(Server Side Event)来实现服务端向客户端的单向推送,SSE基于HTTP,是单向通信.  3)WebSocket是在服务端和客户端建立双工通信.…
CGI 通用网关接口(Common Gateway Interface/CGI)是一种重要的互联网技术,可以让一个客户端,从网页浏览器向执行在网络服务器上的程序请求数据.CGI描述了服务器和请求处理程序之间传输数据的一种标准. CGI程序可以用任何脚本语言或者是完全独立编程语言实现,只要这个语言可以在这个系统上运行. 摘自维基百科 一句话总结: 一个标准,定义了客户端服务器之间如何传数据 FastCGI 快速通用网关接口(Fast Common Gateway Interface/FastCGI…
catalog . Introduction . nginx文件类型错误解析漏洞 . 针对直接公网开放的Fast-CGI攻击 . 通过FCGI API动态修改php.ini中的配置实现RCE 1. Introduction 我们首先来梳理一下CGI的相关概念 . CGI CGI是为了保证web server传递过来的数据是标准格式的,从本质上来说,它是一个协议标准.web server(例如nginx)只是内容的分发者.比如 ) 如果请求/index.html,那么web server会去文件系…
1         FastCGI介绍 FastCGI:快速通用网关接口(Fast Common Gateway Interface/FastCGI)是一种让交互程序与Web服务器通信的协议.    FastCGI像是一个常驻(long-live)型的CGI,它可以一直执行着,只要激活后,不会每次都要花费时间去fork一次.它还支持分布式的运算, 即 FastCGI 程序可以在网站服务器以外的主机上执行并且接受来自其它网站服务器来的请求.    FastCGI具有稳定,安全,高性能,方便扩展等优…
做一个项目的时候需要服务环境,又不想使用apache,php,于是找到一款比较简单的易用的webserver 就是http-server 首先介绍一个怎么使用吧,http-server 是基于nodejs 的webserver ,首先确认你的电脑安装了nodejs 两种安装方式,一个全局安装 npm install http-server -g 也可以局部安装,不过官网推荐使用的 jitsu 安装 jitsu 也是需要安装的,具体方法同上,就不赘述了 jitsu install http-ser…
一行命令启动http-server总结:1. python2.xpython2 -m SimpleHTTPServer 8000 2. python3.xpython -m http.server 8000 3. twistd(python)twistd -n web -p 8000 --path .或者 python -c 'from twisted.web.server import Site; from twisted.web.static import File; from twiste…
什么是CGI CGI全称"通用网关接口"(Common Gateway Interface),用于HTTP服务器与其它机器上的程序服务通信交流的一种工具,CGI程序须运行在网络服务器上. 传统CGI接口方式的主要缺点是性能较差,因为每次HTTP服务器遇到动态程序时都需要重启解析器来执行解析,然后结果被返回给HTTP服务器.这在处理高并发访问几乎是不可用的,因此就诞生了FastCGI.另外传统的CGI接口方式安全性也很差. 什么是FastCGI FastCGI是一个可伸缩地.高速地在HT…
小结: 0.结构图 client-request ---> cgi/fastcgi (interface/server)  ---> cgi/fastcgi program/applications  ---> client 1.CGI程序运行在独立的进程中,并对每个Web请求创建一个进程:由于地址空间无法共享,也限制了资源重用. Since a new process is created for each request and thrown away when the reques…
在讨论 FastCGI 之前,不得不说传统的 CGI 的工作原理,同时应该大概了解 CGI 1.1 协议 传统 CGI 工作原理分析 客户端访问某个 URL 地址之后,通过 GET/POST/PUT 等方式提交数据,并通过 HTTP 协议向 Web 服务器发出请求,服务器端的 HTTP Daemon(守护进程)将 HTTP 请求里描述的信息通过标准输入 stdin 和环境变量(environment variable)传递给主页指定的 CGI 程序,并启动此应用程序进行处理(包括对数据库的处理)…
Node.js中http-server的使用 使用阿里的npm镜像 国外的npm太慢了.查看一下自己使用的源: npm config get registry 1 应该显示https://registry.npmjs.org/.这回改成阿里的: npm config set registry https://registry.npm.taobao.org 1 不过在npm publish时要记得切回去 安装http-server http-server是一个基于Node.js的简单零配置命令行H…
一.什么是用户体验? 用户体验(User Experience,简称UE/UX)是用户在使用产品过程中建立起来的一种纯主观感受.但是对于一个界定明确的用户群体来讲,其用户体验的共性是能够经由良好设计实验来认识到.计算机技术和互联网的发展,使技术创新形态正在发生转变,以用户为中心.以人为本越来越得到重视,用户体验也因此被称做创新2.0模式的精髓.在中国面向知识社会的创新2.0--应用创新园区模式探索中,更将用户体验作为"三验"创新机制之首. ISO 9241-210标准将用户体验定义为…
一行命令启动http-server总结:1. python2.x python2 -m SimpleHTTPServer 8000 2. python3.x python -m http.server 8000 3. twistd(python) twistd -n web -p 8000 --path . 或者 python -c 'from twisted.web.server import Site; from twisted.web.static import File; from tw…
在搭建 LAMP/LNMP 服务器时,会经常遇到 PHP-FPM.FastCGI和CGI 这几个概念.如果对它们一知半解,很难搭建出高性能的服务器. 0.CGI的引入 在网站的整体架构中,Web Server(如nginx,apache)只是内容的分发者,对客户端的请求进行应答. 如果客户端请求的是index.html这类静态页面,那么Web Server就去文件系统中找对应的文件,找到返回给客户端(一般是浏览器),在这里Web Server分发的就是是静态数据. 整个过程如下图: 对于像ind…
[文章作者:张宴 本文版本:v6.3 最后修改:2010.07.26 转载请注明原文链接:http://blog.s135.com/nginx_php_v6/] 前言:本文是我撰写的关于搭建“Nginx + PHP(FastCGI)”Web服务器的第6篇文章.本系列文章作为国内最早详细介绍 Nginx + PHP 安装.配置.使用的资料之一,为推动 Nginx 在国内的发展产生了积极的作用.本文可能不断更新小版本,请记住原文链接“http://blog.s135.com/nginx_php_v6…
什么是CGI? CGI(Common Gateway Interface),公共网关接口,它是Web服务器与外部应用程序(CGI程序)之间传递信息的接口标准.通过CGI接口,Web服务器就能够获取客户端提交的信息,并转交给服务器端的CGI程序处理,最后返回结果给客户端.也就是说,CGI实际上是一个接口标准.我们通常所说的CGI是指CGI程序,即实现了CGI接口标准的程序.只要某种语言具有标准输入.输出和环境变量,如perl.php.C等,就可以用来编写CGI程序. CGI程序的工作方式:Web服…
前言:本文是我撰写的关于搭建“Nginx + PHP(FastCGI)”Web服务器的第6篇文章.本系列文章作为国内最早详细介绍 Nginx + PHP 安装.配置.使用的资料之一,为推动 Nginx 在国内的发展产生了积极的作用.本文可能不断更新小版本,请记住原文链接“http://blog.zyan.cc/nginx_php_v6/”,获取最新内容.第6篇文章主要介绍了Nginx 0.8.x新的平滑重启方式,将PHP升级到了5.2.14,修正了PEAR问题.另将MySQL 5.1.x升级到了…
1. 安装 http-server 模块 npm install http-server -g   全局安装 2.在需要的文件夹   启动 http-server  默认的端口是8080    可以使用 -p 参数指定一个端口号…
在上一章中我们认识了netty,他有三大优点:并发高,传输快,封装好.在这一章我们来用Netty搭建一个HttpServer,从实际开发中了解netty框架的一些特性和概念. netty.png 认识Http请求 在动手写Netty框架之前,我们先要了解http请求的组成,如下图: HTTP response component parts   HTTP response 第一部分是包含的头信息 HttpContent 里面包含的是数据,可以后续有多个 HttpContent 部分 LastHt…
pip是Python官方推荐的包管理工具   属于python的一部分            pip的使用    pip的安装             sudo apt-get install python-pip             sudo apt-get install python3-pip   安装包             pip3  install   package   升级             pip3  install  --upgrade  package   查看…
转自:http://blog.s135.com/nginx_php_v6/] 前言:本文是我撰写的关于搭建“Nginx + PHP(FastCGI)”Web服务器的第6篇文章.本系列文章作为国内最早详细介绍 Nginx + PHP 安装.配置.使用的资料之一,为推动 Nginx 在国内的发展产生了积极的作用.本文可能不断更新小版本,请记住原文链接“http://blog.s135.com/nginx_php_v6/”,获取最新内容.第6篇文章主要介绍了Nginx 0.8.x新的平滑重启方式,将P…
http-server 简介 https://blog.csdn.net/ithanmang/article/details/88375259http-server 是一个简单的零配置的命令行 http服务器,它足够强大便于生产和使用,用于本地测试和开发. 有时候我们打开一个文档使用file协议打开的时候,不能发送ajax请求,只能使用http协议才能请求资源, 具体的区别大家可以去参考这篇文档 https://www.cnblogs.com/lishanlei/p/9327646.html,所…
本示例源于为朋友解决一个小问题,数据库到服务器的数据传输,由于本人能力有限,暂时将它理解为从数据库中获取数取表数据,实际上有可能是文件或者其他形式的数据,不过原理都得用流传输, 首先httpclient import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONArray;import netscape.javascript.JSObject; import java.io.*;import java.net.HttpURL…
[文章作者:张宴 本文版本:v6.3 最后修改:2010.07.26 转载请注明原文链接:http://blog.zyan.cc/nginx_php_v6/] 前言:本文是我撰写的关于搭建“Nginx + PHP(FastCGI)”Web服务器的第6篇文章.本系列文章作为国内最早详细介绍 Nginx + PHP 安装.配置.使用的资料之一,为推动 Nginx 在国内的发展产生了积极的作用.本文可能不断更新小版本,请记住原文链接“http://blog.zyan.cc/nginx_php_v6/”…
httpserver.h #ifndef HTTPSERVER_H #define HTTPSERVER_H #include <QObject> #include <QtCore> #include <QtNetwork> class HttpServer : public QObject { Q_OBJECT public: static HttpServer &instance(); void run(const QHostAddress &add…
在写这篇博客之前我查了很久发现全网都没有一篇写httpserver源码解析的 所以今天就由我来为大家解析一下httpserver的源码.(这里我会去掉其中的https部分的源码,只讲http部分,对httpserver中https的实现感兴趣的读者可以尝试自己去阅读,这部分并不复杂) 第一次在没有参考资料的情况下写这么长一篇源码解析,可能会有很多错误和讲不清楚的地方,希望大家尽量指出来. 本文链接 https://www.cnblogs.com/fatmanhappycode/p/1261442…
HttpServer的特点1.完全采用IOCP模型,实现真正的异步IO,高并发.高可靠: 2.支持4G以上文件下载: 3.支持断点续传: 4.轻量级,体积小,服务器文件仅200多K,无任何依赖库: 5.支持CGI网关,通过CGI.xml可动态配置各种网关接口,实现动态交互: 6.内置上传文件接口: 点击此处下载 ​ 一.命令行参数介绍 启动服务器: HttpServer.exe -W d:\web -H index.html -P 80 -M 10000 -W : web网站的发布路径,如:d:…
Http-server # 全局安装 npm install http-server -g # 启动服务 # 禁用缓存 http-server -c-1 # 在当前目录下的www启动服务器 http-server './www/' -c-1 说明: -p 配置端口 默认8080 -c-1 禁用缓存 # 配置到全局命令 bash: http-server: 未找到命令... # 查询npm安装的路径 find / -iname http-server ln -s /usr/local/node/n…
2021年4月写过一个轻量级的web服务器HttpServer,见文章: <HttpServer:一款Windows平台下基于IOCP模型的高并发轻量级web服务器>,但一直没有时间添加Openssl功能,也就是将HTTP拓展为HTTPS,从而提供安全访问功能. 没时间只是一方面,关键是集成openssl的难度也很大. Windows的IOCP是一个高并发的异步IO模型,Openssl对异步IO支持的实现方式网上介绍的非常少,尤其是对IOCP模型.如果你的程序采用的是阻塞IO模型,使用open…