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

备注:
PC Linux:Ubuntu-15.10
PC Linux用户:root
lighttpd版本:1.4.39
arm-linux-gcc版本:arm-hisiv200-linux-gcc
arm Linux用户:root

1.  编译、安装
1.1  先到lighttpd官网下载对应版本的软件包
 http://www.lighttpd.net/
 我下载的是lighttpd-1.4.39.tar.gz
1.2  将压缩包解压到任意目录(我的是/user/)得到文件夹lighttpd-1.4.39
1.3  打开控制台,cd进入lighttpd-1.4.39目录
1.4   配置lighttpd。

   1.4.1 执行命令:
   CC=arm-hisiv200-linux-gcc  ./configure  --prefix=/user/rootfs  -- host=arm-linux  --without-zlib  --without-bzip2

   1.4.2 如果没有环境的,需要在编译lighttpd之前,安装pcre。
CC=arm-hisiv200-linux-gcc PCRECONFIG=/usr/local/pcre/bin/pcre-config  ./configure --prefix=/user/rootfs  --host=arm-linux  --without-zlib 
--without-bzip2


1.5  编译lighttpd,执行命令:
   make
1.6  安装lighttpd,执行命令:
   make  install
1.7   安装完成后,在安装目录 /opt/web/lighttpd-1.4.30-x86 中生成 lib、sbin和share三个文件夹,如下图所示:
 

2. 配置
2.1. 在安装目录 /opt/web/lighttpd-1.4.30-arm 中手动创建如下文件夹:cache、cgi-bin、config、log、sockets、upload、vhosts、webpages。如下图所示:
 
2.2. 将源码包中doc/config目录下的config.d、lighttpd.conf和modules.conf复制到安装目录中config文件夹里面,如下图所示:
 
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代码:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>lighttpd测试</title>
</head>
<body>
<p>轻量级web服务器lighttpd的编译及配置(for arm-linux)</p>
<hr>
<p>测试页面</p>
</body>
</html>
3.2. 将文档保存为index.html,并复制到安装目录中的webpages文件夹里面,如下图所示:
 
3.3. 将安装目录 /user/rootfs 从主机复制到开发板中相同的目录。
3.4. 打开开发板的控制台(串口控制台或者SSH控制台),cd进入到lighttpd可执行文件的安装目录:cd /user/rootfs/sbin/
3.5. 启动lighttpd服务器 ./lighttpd -f ../config/lighttpd.conf,如下图所示:
 
3.6. 启动网页浏览器,输入开发板的IP地址,回车,即可浏览到刚才创建的主页了,如下图所示:
 
3.7. 关闭服务器:
 执行ps  查看进程号,kill进程号。

转载于:https://www.cnblogs.com/suidan1314/p/5268165.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值