`

lighttpd基础配置-perl CGI、php

阅读更多

 红旗自带apache2作为默认的web服务器。在原来的系统中就是使用apache作为web页面的服务器,apache占用的内存很多,一个apache进程占用的内存大约是20M,最大的可能占到35M以上,占用的共享内存都在100多M以上。而且apache是一个多进程响应服务,这样apache的进程占用内存更多。因此经长时间运行,会出现由于内存不够而无法访问界面的情况。
   lighttpd是一个理想的替代方案。其是一个非常轻便的web服务器,虽然它的功能没有apache强大,但是可以满足大部分的服务要求。它的内存占用量一般是2M左右,占用的共享内存是20M左右,而且与apache实现机制不同的是,lighttpd采用单进程多路复用的方式响应请求,在系统中一般只有一个lighttpd进程响应服务请求。(也可配置为多进程)所以从内存占用量的角度看,lighttpd就有很大的优势。此外,lighttpd也可以通过配置fast-cgi支持php应用。
   本文仅是我刚开始试用lighttpd的一个笔记,把常规的功能总结一下:
引用
1、支持perl的cgi程序;
2、使用fast-cgi支持php、mysql、gd等应用。

   更多的功能尝试,后续提供。

一、安装
官方网站:http://www.lighttpd.net/
目前最新的stable版本是1.4.19,您可以使用源码方式安装。而我是基于红旗 Asianux 3.0 x86上编译的rpm,这里可以下载:点击
拷贝默认配置文件:

# mkdir /etc/lighttpd/
# cp /usr/share/doc/lighttpd-1.4.19/lighttpd.conf /etc/lighttpd

二、基础配置
打开默认配置文件,可发现配置方式不像apache,更像perl的风格。打开一些默认的模块,及修改路径即可。
引用
#加载模块
server.modules              = ("mod_access","mod_accesslog" )
#默认web根路径
server.document-root        = "/var/www/html/"
#错误日志
server.errorlog             = "/var/log/lighttpd/error.log"
#访问日志
accesslog.filename          = "/var/log/lighttpd/access.log"

保存后,创建对应的日志目录,启动即可:

# service lighttpd start

# lighttpd -f /etc/lighttpd/lighttpd.conf

三、常规应用
1、支持perl的CGI应用
perl是最常见的CGI应用语言之一,只要修改配置文件打开支持即可:
引用
server.modules              += ("mod_cgi")
cgi.assign                 = ( ".pl"  => "/usr/bin/perl",
                              ".cgi" => "/usr/bin/perl" )

perl执行路径请确认正确无误。另外,也可实现apache的模式,即把perl脚本放在cgi-bin目录:
引用
server.modules              += ("mod_cgi","mod_alias")
alias.url += ( "/cgi-bin" => server_root + "/cgi-bin" )
$HTTP["url"] =~ "^/cgi-bin" {
   cgi.assign = ( "" => "" )
}

没错,这时候还需要额外加载mod_alias模块。
◎测试:
引用
# cat /var/www/html/test.pl
#!/usr/bin/perl -w
use CGI qw/:standard/;
my $cgi = new CGI;
print "Content-type:text/plain;\n\n";
print "test\n";
$id = $cgi -> param('id');
print "from Internet Explore parmater 'id' is $id.";

※注意,别忘了给perl脚本加上执行权限哦。
访问下面的链接可得到结果:
引用
http://ip/test.pl?id=123

以后,访问mysql等工作,就是perl的DBI模块的问题了。

2、支持php应用
lighttpd使用fast-cgi模式支持php应用,配置前,需要确保php-cgi已经安装好:
引用
# type php-cgi
php-cgi is /usr/bin/php-cgi
# rpm -qf /usr/bin/php-cgi
php-cli-5.1.6-12.2AX
# php-cgi -v
PHP 5.1.6 (cgi-fcgi) (built: Aug 14 2007 00:38:17)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies

有些php模块并不适合cli环境使用,会报警告信息,可不必理会。
然后,打开lighttpd的配置:
引用
server.modules              += ("mod_fastcgi")
fastcgi.server             = ( ".php" =>
                              ( "localhost" =>
                                (
                                  "socket" => "/var/run/lighttpd/php-fastcgi.socket",
                                  "bin-path" => "/usr/bin/php-cgi"
                                )
                              )
                           )

同样的,需建立/var/run/lighttpd/目录,以及确保php-cgi的执行路径正确。
剩下的,就是看你需要那些php模块,例如mysql等:
引用
# rpm -qa|grep php|grep mysql
php-mysql-5.1.6-12.2AX
# rpm -ql php-mysql
/etc/php.d/mysql.ini
/etc/php.d/mysqli.ini
/etc/php.d/pdo_mysql.ini
/usr/lib/php/modules/mysql.so
/usr/lib/php/modules/mysqli.so
/usr/lib/php/modules/pdo_mysql.so

只要安装了合适的模块,php即可正常使用。
◎测试:
建立一个phpinfo脚本:
引用
# cat /var/www/html/info.php
<?php
phpinfo()
?>

访问:http://ip/info.php,结果如下:


 
可见,包括mysql、gd、xml等都可顺利支持。

 

  • 大小: 102 KB
分享到:
评论

相关推荐

    lighttpd-1.4.20-cmake

    《lighttpd-1.4.20-cmake:轻量级HTTP服务器的构建与配置详解》 在互联网服务领域,HTTP服务器是不可或缺的一部分,它们负责处理来自客户端的HTTP请求并返回相应的网页内容。其中,lighttpd因其轻量、高效、安全的...

    lighttpd-1.4.30.tar.gz

    《lighttpd-1.4.30:轻量级Web服务器的配置与应用》 lighttpd是一款轻量级的Web服务器,以其高效的性能、低内存占用和丰富的功能而受到许多开发者的青睐。在本篇文章中,我们将深入探讨lighttpd-1.4.30版本的特性和...

    搭建lighttpd+cgi的代码包

    压缩包文件`lighttpd_cgi`可能包含示例CGI脚本、lighttpd配置示例以及其他辅助文件,用于帮助初学者更好地理解和实践lighttpd与CGI的结合使用。解压并研究这些文件,可以帮助你深入理解这一过程。 总结,通过上述...

    最新lighttpd源码 lighttpd-1.4.22

    支持FastCGI, CGI, Auth, 输出压缩(output compress), URL重写, Alias等重要功能,而Apache之所以流行,很大程度也是因为功能丰富,在lighttpd上很多功能都有相应的实现了,这点对于apache的用户是非常重要的,因为...

    安卓系统lighttpd-php-mysql本地环境 v8.0.zip

    这是一个可在安卓手机上布置的服务器环境,功能组件包括:lighttpd、php和mysql,能成功运行DZ等php程序,安装和配置过程十分简单,也许现在该是讨论用什么手机做服务器更合适的时候了。  演示图片为一成功运行的...

    LightTPD for windows 1.4.45-x86

    startLighttp.vbs 为一键启动lighttpd和php-cgi的启动脚本,php使用fastcgi host:port形式 test_cgi.cmd 为测试cgi传参数用(如果发现php程序返回No input file specified.说明server.document-root这个目录配置的有...

    lighttpd-1.4.55移植配置与测试.rar

    交叉编译最新版的lighttpd-1.4.55,配置与测试CGI与HTML.内含 lighttpd-1.4.55源码,移植教程,cgi测试代码,html测试代码.测试cgi时,浏览器中应该输入192.168.100.30/cgi-bin/xx.cgi .其中 192.168.100.30为开发板的ip

    LightTPD-1.4.16-Win32安装版

    在下载的压缩包中,"LightTPD-1.4.16-Win32.exe"是LightTPD的Windows版本安装程序。安装过程中,用户通常需要选择安装路径、配置服务器端口、设置默认文档根目录等。安装完成后,通过修改配置文件(通常是`lighttpd....

    LightTPD for windows 1.4.45-x64

    startLighttp.vbs 为一键启动lighttpd和php-cgi的启动脚本,php使用fastcgi host:port形式 test_cgi.cmd 为测试cgi传参数用(如果发现php程序返回No input file specified.说明server.document-root这个目录配置的有...

    lighttpd-1.4.45_lighttpd服务器_

    在lighttpd-1.4.45中,支持如FastCGI、mod_proxy、mod_rewrite等常见模块,可以轻松集成PHP、Python等脚本语言,实现动态内容的处理。 安全性方面,lighttpd-1.4.45同样表现出色。它内置了防止DoS攻击的机制,比如...

    安卓系统lighttpd-php-mysql本地环境 v8.0

    这是一个可在安卓手机上布置的服务器环境,功能组件包括:lighttpd、php和mysql,能成功运行DZ等php程序,安装和配置过程十分简单,也许现在该是讨论用什么手机做服务器更合适的时候了。演示图片为一成功运行的...

    lighttpd restfulapi cgi

    5. **性能调优**:通过调整lighttpd配置和优化CGI脚本,降低延迟,提高并发处理能力。 总结,lighttpd通过RESTful API和CGI实现了动态内容和服务的高效提供。理解并熟练掌握这种集成方式,能帮助开发者构建出高效、...

    lighttpd-1.4.59.tar.gz

    本文将详细介绍lighttpd-1.4.59版本的安装过程以及基础配置,帮助读者深入理解这一开源HTTP服务器。 一、lighttpd简介 lighttpd是由德国开发者Jan Kneschke发起的项目,旨在提供一个快速、内存占用小且配置简单的...

    修复CGI无法通过html传递参数表问题的lighttpd

    在lighttpd-1.4.26版本的问题中,可能是由于服务器在处理POST请求时,没有正确地将表单数据转换为环境变量,或者是CGI配置文件存在问题,导致CGI脚本无法访问这些关键参数。这会阻碍CGI应用程序的正常运行,尤其是...

    lighttpd配置和启动脚本

    在本压缩包中,我们重点关注`lighttpd.conf`配置文件以及用于控制Web服务器启动和停止的脚本。下面我们将深入探讨这两个核心元素。 一、lighttpd.conf配置文件详解 1. **基本设置**:`server.document-root` 指定...

    lighttpd+php in android

    这通常涉及到编辑lighttpd的配置文件(如`lighttpd.conf`),启用FastCGI模块,然后配置FastCGI监听特定的端口,以便与PHP-CGI通信。 4. **设置PHP**:在Android设备上,PHP-CGI需要知道如何处理PHP脚本。这可能...

    Openwrt里架设Lighttpd+PhP5+MYSQL环境标准教程.pdf

    * 安装lighttpd模块:安装lighttpd-mod-fastcgi、lighttpd-mod-access、lighttpd-mod-alias、lighttpd-mod-redirect、lighttpd-mod-rewrite等模块。 * 安装php5模块:安装php5-fastcgi、php5-mod-gd、php5-mod-xml、...

    lighttpd 安装配置

    pcre(Perl Compatible Regular Expressions)库提供了与Perl相容的正则表达式功能,这对于Lighttpd来说非常重要,尤其是在进行复杂配置如虚拟主机管理和Rails应用支持时。虽然Lighttpd在没有pcre的情况下也能运行,...

    最新lighttpd-1.4.28源码下载

    最新lighttpd-1.4.28源码下载最新lighttpd-1.4.28源码下载最新lighttpd-1.4.28源码下载最新lighttpd-1.4.28源码下载最新lighttpd-1.4.28源码下载最新lighttpd-1.4.28源码下载

    lighttpd-1.4.39.tar.gz

    四、安装与配置lighttpd-1.4.39 1. 下载与解压:首先从lighttpd官方网站下载lighttpd-1.4.39.tar.gz,然后使用tar命令解压。 2. 编译安装:运行configure脚本进行配置,指定安装路径,然后执行make和make install。...

Global site tag (gtag.js) - Google Analytics