Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3121398
  • 博文数量: 396
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 4209
  • 用 户 组: 普通用户
  • 注册时间: 2016-07-04 13:04
文章分类

全部博文(396)

文章存档

2022年(1)

2021年(2)

2020年(8)

2019年(24)

2018年(135)

2017年(158)

2016年(68)

我的朋友

分类: 嵌入式

2018-09-25 22:23:34

嵌入式web服务器lighttpd的交叉编译及配置(for arm-linux)  

备注:
PC Linux:Ubuntu-10.10
PC Linux用户:root
lighttpd版本:1.4.30
arm-linux-gcc版本:4.4.3
arm linux用户:root

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
1.10. 安装完成后,在安装目录 /opt/web/lighttpd-1.4.30-x86 中生成 lib、sbin和share三个文件夹,如下图所示:
轻量级web服务器lighttpd的交叉编译及配置(for arm-linux) - Jim - Jim Liang
 
2. 配置
2.1. 在安装目录 /opt/web/lighttpd-1.4.30-arm 中手动创建如下文件夹:cache、cgi-bin、config、log、sockets、upload、vhosts、webpages。如下图所示:
轻量级web服务器lighttpd的交叉编译及配置(for arm-linux) - Jim - Jim Liang

2.2. 将源码包中doc/config目录下的config.d、lighttpd.conf和modules.conf复制到安装目录中config文件夹里面,如下图所示: 
轻量级web服务器lighttpd的交叉编译及配置(for arm-linux) - Jim - Jim Liang
 
2.3. 修改刚复制过来的lighttpd.conf文件
1)将16行至20行修改为如下褐色加粗字体所示:
var.log_root    = "/opt/web/lighttpd-1.4.30-arm/log"
var.server_root = "/opt/web/lighttpd-1.4.30-arm"
var.state_dir   = "/opt/web/lighttpd-1.4.30-arm"
var.home_dir    = "/opt/web/lighttpd-1.4.30-arm"
var.conf_dir    = "/opt/web/lighttpd-1.4.30-arm/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-arm/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代码:
lighttpd测试

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


测试页面

3.2. 将文档保存为index.html,并复制到安装目录中的webpages文件夹里面,如下图所示:
轻量级web服务器lighttpd的交叉编译及配置(for arm-linux) - Jim - Jim Liang
3.3. 将安装目录 /opt/web/lighttpd-1.4.30-arm 从主机复制到开发板中相同的目录。
3.4. 打开开发板的控制台(串口控制台或者SSH控制台),cd进入到lighttpd可执行文件的安装目录:cd /opt/web/lighttpd-1.4.30-arm/sbin/
3.5. 启动lighttpd服务器 ./lighttpd -f ../config/lighttpd.conf,如下图所示:
嵌入式web服务器lighttpd的交叉编译及配置(for arm-linux) - Jim - Jim Liang
3.6. 启动网页浏览器,如 Google Chrome,输入开发板的IP地址,回车,即可浏览到刚才创建的主页了,如下图所示:
嵌入式web服务器lighttpd的交叉编译及配置(for arm-linux) - Jim - Jim Liang
 3.7. 关闭服务器:killall lighttpd
 
提示:
        有关lighttpd在PC机上面的移植过程可参考本博“Web开发”栏目的文章《轻量级web服务器lighttpd的编译及配置(for-x86-linux)》
--------------------- 本文来自 yi412 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/yi412/article/details/45846691?utm_source=copy
阅读(3099) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~