lighttpd的其他web服务可否与websocket服务共用80端口(lighttpd的简单介绍)

2023-03-25 20:05:32 指南信息 梁佰亿

websocket不也是走HTTP的,只要是提供HTTP的端口就可以了。

做法跟提供HTTP服务一样。如果提供websocket的是lighttpd,就直接是同一个端口了;如果提供websocket的是其他服务器,如nodejs,java...的话,就反代到80端口咯。至于区分其他HTTP服务和websocket服务就通过不同的请求路径来实现就可以了。

websocket的请求报头是这样的:

GET /demo HTTP/1.1

Host: example.com

Connection: Upgrade

Sec-WebSocket-Key2: 12998 5 Y3 1 .P00

Upgrade: WebSocket

Sec-WebSocket-Key1: 4@1 46546xW%0l 1 5

Origin:

ws://开头的请求,浏览器还走HTTP请求,只是会在其报头上加上websocket通信相关的headers,websocket服务器就可以作出相应的响应了。websocket客户端是通过发送HTTP请求来打开websocket的。

通过lighttpd反代到websocket专用的path,并转发websocket的headers就行啦!

lighttpd的简单介绍 第1张

如何对lighttpd进行交叉编译安装并配置lighttpdweb服务器

1. 编译、安装

1.1. 先到lighttpd官网下载对应版本的软件包:

我下载的是 lighttpd-1.4.30.tar.gz

1.2. 将压缩包解压到任意目录(我的是 /root/Desktop/common)得到文件夹 lighttpd-1.4.30

1.3. 在文件夹 lighttpd-1.4.30 中创建shell脚本,命名为:configure-arm.sh

1.4. 在shell脚本 configure-arm.sh 中输入如下代码:

#! /bin/sh

CC=arm-linux-gcc

AR=arm-linux-ar LD=arm-linux-ld RANLIB=arm-linux-ranlib

STRIP=arm-linux-strip ./configure --prefix=/opt/web/lighttpd-1.4.30-arm

--host=arm-linux --build=i686-pc-linux --disable-FEATURE --enable-shared

--disable-static --disable-lfs --disable-ipv6 --without-PACKAGE

--without-valgrind --without-openssl --without-kerberos5 --without-pcre

--without-zlib --without-bzip2 --without-lua

1.5. 打开控制台,cd进入 lighttpd-1.4.30 目录

1.6. 给 configure-arm.sh 文件添加可执行属性,执行命令:

chmod +x configure-arm.sh

1.7. 配置lighttpd,执行命令:

./configure-arm.sh

1.8. 编译lighttpd,执行命令:

make

1.9. 安装lighttpd,执行命令:

make install

Lighttpd配置用户认证

Lighttpd使用mod_auth模块可实现对域等进行用户名、密码保护的功能。这与Apache下用.htaccess实现的保护是类似的。

1.在modules.conf中加入

2.在auth.conf中加入

1.密码文件保存方式为plain普通文本文件

2.设置调试级别(0是关闭调试信息,1是认证成功信息,2是更详细的调试信息),信息被记录在 access.log和error.log日志文件中

3.密码文件保存路径

4.指定要进行认证目录,空引号代表所有目录

6.使用基本身份认证

7.用户认证界面提示信息

8.匹配密码文件中的用户

密码文件的添加方式:username:passward。一行一条记录

设置先用户验证后跳转到自定义页面,auth.require的路径必须大于.html的路径

官方文档:

《Lighttpd源码分析》epub下载在线阅读全文,求百度网盘云资源

《Lighttpd源码分析》(高群凯)电子书网盘下载免费在线阅读

链接:

提取码:RFDP  

书名:Lighttpd源码分析

作者:高群凯

出版社:机械工业出版社

出版年份:2010-3

页数:460

内容简介:

本书主要针对lighttpd源码进行了深度剖析。主要内容包括:lighttpd介绍与分析准备工作、lighttpd网络服务主模型、lighttpd数据结构、伸展树、日志系统、文件状态缓存器、配置信息加载、i/o多路复用技术模型、插件链、网络请求服务响应流程、请求响应数据快速传输方式,以及基本插件模块。本书针对的lighttpd项目版本为稳定版本1.4.20。

本书适合使用lighttpd的人员和爱好者参考。

常用的web服务器软件有哪些

1.IIS

IIS是英文Internet Information Server的缩写,译成中文就是"Internet信息服务"的意思。它是微软公司主推的服务器,最新的版本是Windows2008里面包含的IIS 7,IIS与Window Server完全集成在一起,因而用户能够利用Windows Server和NTFS(NT File System,NT的文件系统)内置的安全特性,建立强大,灵活而安全的Internet和Intranet站点。

2.ApacheApache

ApacheApache在世界上的排名是第一的,它可以运行在几乎所有广泛使用的计算机平台上。Apache源于NCSAhttpd服务器,经过多次修改,不仅简单、速度快、而且性能稳定,还可以用来做代理服务器。

3.Nginx

Nginx不仅是一个小巧且高效的HTTP服务器,也可以做一个高效的负载均衡反向代理,通过它接受用户的请求并分发到多个Mongrel进程可以极大提高Rails应用的并发能力。

4.Zeus

Zeus是一个运行于Unix下的非常优秀的Web Server,据说性能超过Apache,是效率最高的Web Server之一。

5.Sun

Sun的Java系统Web服务器也就是以前的Sun ONE Web Server。主要出现在那些运行Sun的Solaris操作系统的关键任务级Web服务器上。它最新的版本号是6.1,可以支持x86版本Solaris,Red Hat Linux,HP-UX 11i, IBM AIX,甚至可以支持Windows,但它的大多数用户都选择了SPARC版本的Solaris操作系统。

发表评论: