轻量级web服务器lighttpd的编译及配置(for x86-linux)

转自:http://blog.163.com/ljf_gzhu/blog/static/131553440201211522317367/

 

备注:

PC Linux:Ubuntu-10.10
Linux用户:root
lighttpd版本:1.4.30
gcc版本:4.4.5 
 
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-x86.sh
1.4. 在shell脚本 configure-x86.sh 中输入如下代码:
#! /bin/sh
./configure --prefix=/opt/web/lighttpd-1.4.30-x86 --host=i686-pc-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-x86.sh 文件添加可执行属性,执行命令:
chmod +x configure-x86.sh
1.7. 配置lighttpd,执行命令:
./configure-x86.sh
1.8. 编译lighttpd,执行命令:
make
1.9. 安装lighttpd,执行命令:
make install
1.10. 安装完成后,在安装目录 /opt/web/lighttpd-1.4.30-x86 中生成 lib、sbin和share三个文件夹,如下图所示:
轻量级web服务器lighttpd的编译及配置(for x86-linux) - Jim - Jim Liang
 
 
2. 配置
2.1. 在安装目录 /opt/web/lighttpd-1.4.30-x86 中手动创建如下文件夹:cache、cgi-bin、config、log、sockets、upload、vhosts、webpages。如下图所示:
轻量级web服务器lighttpd的编译及配置(for x86-linux) - Jim - Jim Liang
 
 2.2. 将源码包中doc/config目录下的config.d、lighttpd.conf和modules.conf复制到安装目录中config文件夹里面,如下图所示:
轻量级web服务器lighttpd的编译及配置(for x86-linux) - Jim - Jim Liang
 
 2.3. 修改刚复制过来的lighttpd.conf文件
1)将16行至20行修改为如下褐色加粗字体所示:
var.log_root    =  "/opt/web/lighttpd-1.4.30-x86/log"
var.server_root =  "/opt/web/lighttpd-1.4.30-x86"
var.state_dir   =  "/opt/web/lighttpd-1.4.30-x86"
var.home_dir    =  "/opt/web/lighttpd-1.4.30-x86"
var.conf_dir    =  "/opt/web/lighttpd-1.4.30-x86/config"
 2)将61行和93行修改为如下褐色加粗字体所示:
var.cache_dir   =  server_root + "/cache"
server.use-ipv6 =  "disable"
3)将104和105行注释掉,如下所示:
#server.username  = "lighttpd"
#server.groupname = "lighttpd"
4)将115行修改为如下褐色加粗字体所示:
server.document-root =  server_root + "/webpages"
5)将127行注释掉,如下所示:
#server.pid-file = state_dir + "/lighttpd.pid"
6)如果不需要查看错误日志文件,可以将141行注释掉,如下所示:
#server.errorlog             = log_root + "/error.log"
7)将152行、158行、191行注释掉,如下所示:
#include "conf.d/access_log.conf"
#include "conf.d/debug.conf"
#server.network-backend = "linux-sendfile"
8)根据系统资源设置207行和225行的数值,本系统的设置分别如下褐色加粗字体所示:
server.max-fds =  256
server.max-connections =  128
9)将314至316行注释掉,如下所示:
#$HTTP["url"] =~ "\.pdf$" {
#  server.range-requests = "disable"
#}
10)将373行修改为如下褐色加粗字体所示:
server.upload-dirs =  ( "/opt/web/lighttpd-1.4.30-x86/upload" )
 
2.4. 修改刚复制过来的modules.conf文件
1)找到43行,将光标定位到逗号后面,回车,插入如下内容:
"mod_alias",
2)使能CGI模块,将138行的注释符去掉,如下所示:
include "conf.d/cgi.conf"
 
2.5. 修改刚复制过来的conf.d文件夹里面的cgi.conf文件
1)将15至19行这一段配置修改如下:
原文内容:
cgi.assign                 = ( ".pl"  => "/usr/bin/perl",
                               ".cgi" => "/usr/bin/perl",
                               ".rb"  => "/usr/bin/ruby",
                               ".erb" => "/usr/bin/eruby",
                               ".py"  => "/usr/bin/python" )
更改后:
cgi.assign = (".cgi" => "")
#cgi.assign                 = ( ".pl"  => "/usr/bin/perl",
#                               ".cgi" => "/usr/bin/perl",
#                               ".rb"  => "/usr/bin/ruby",
#                               ".erb" => "/usr/bin/eruby",
#                               ".py"  => "/usr/bin/python" )
2)将28行的注释符去掉,如下所示:
alias.url += ( "/cgi-bin" => server_root + "/cgi-bin" )
 
3. 运行测试
3.1. 在任意地方创建一空白文档,在文档中输入如下HTML代码:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>lighttpd测试</title>
</head>
<body>
<p>轻量级web服务器lighttpd的编译及配置(for x86-linux)</p>
<hr>
<p>测试页面</p>
</body>
</html>
3.2. 将文档保存为index.html,并复制到安装目录中的webpages文件夹里面,如下图所示:
轻量级web服务器lighttpd的编译及配置(for x86-linux) - Jim - Jim Liang
3.3. 开启命令台,cd进入到lighttpd可执行文件的安装目录: cd /opt/web/lighttpd-1.4.30-x86/sbin/
3.4. 执行命令启动lighttpd服务器: ./lighttpd -f ../config/lighttpd.conf ,如下图所示:
轻量级web服务器lighttpd的编译及配置(for x86-linux) - Jim - Jim Liang
 3.5. 启动网页浏览器,如 Google Chrome,输入本机IP地址,回车,即可浏览到刚才创建的主页了,如下图所示:
轻量级web服务器lighttpd的编译及配置(for x86-linux) - Jim - Jim Liang
 3.6. 关闭服务器: killall lighttpd
 
结束语:
        由于本人移植lighttpd的目的是为了开发嵌入式应用,因此配置文件中的设置都是针对嵌入式系统中有限的资源而作的配置,测试OK后即可把这些配置文件原封不动地复制到开发板直接应用。
Python物联网开发是使用Python编程语言开发物联网系统的过程。Python物联网领域有许多优势和特点。首先,Python是一种面向对象、简单、易用的编程语言,适合初学者快速上手。其次,Python拥有丰富的数据结构和库,可以方便地处理物联网中的数据。此外,Python具有健壮性、跨平台性和可扩展性,可以应用于各种不同的物联网平台。另外,Python是一种动态、强类型的语言,可以更加灵活地进行开发和调试。 在传统的单片机开发中,常用的开发语言是C语言和汇编语言。但是,MicroPython的出现使得使用Python开发单片机成为可能。MicroPython是一款支持Python语言的嵌入式解释器,它可以在单片机上运行,并为物联网系统的开发提供便利。MicroPython具有易用性、高效性和灵活性等特点,使得使用Python开发物联网终端成为现实。 物联网系统的开发涉及到多个方面,包括硬件、网络通信、云平台和后台开发等。Python可以应用物联网系统的各个环节。例如,Python可以用于构建物联网网关,实现网络通信和数据处理。同时,Python还可以用于物联网后台的web开发,搭建物联网系统的用户界面和管理平台。通过Python的扩展功能,还可以连接各种硬件设备,实现与物理世界的交互。总之,Python物联网开发中具有广泛的应用场景和丰富的工具和库。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [物联网python开发实践](https://blog.csdn.net/weixin_38628101/article/details/126889723)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值