lighttpd是一个德国人领导的开源web服务器软件,其根本的目的是提供一个专门针对高性能网站,安全、快速、兼容性好并且灵活的webserver环境。具有非常低的内存开销、cpu占用率低、效能好以及丰富的模块等特点。
1、准备环境:
yum -y install gcc gcc-c++ gamin gamin-devel
2、将从官网下载的tar.jz包解压到指定的目录下:
-rw-r--r--. 1 root root 1596143 Jul 27 16:03 lighttpd-1.4.71.tar.gz
[root@CCY ~]# mkdir /lighttpd
[root@CCY ~]# tar -zxvf lighttpd-1.4.71.tar.gz -C /lighttpd
3、配置和编译:
[root@CCY ~]# cd /lighttpd/lighttpd-1.4.71/
[root@CCY lighttpd-1.4.71]# ./configure
4、根据错误的提示补充配置文件:
先查找pcre2-config由哪个软件包提供
[root@CCY lighttpd-1.4.71]# yum provides "*/pcre2-config"
[root@CCY lighttpd-1.4.71]# yum install pcre2-devel-10.23-2.el7.x86_64
[root@CCY lighttpd-1.4.71]# yum install zlib-devel -y
5、编译
[root@CCY lighttpd-1.4.71]# make
[root@CCY lighttpd-1.4.71]# make install
手动编译安装的方式,不会将软件包添加到系统的软件包管理数据库中,也不能使用系统包管理器(如rpm、yum)对其进行管理。需要手动进行配置和管理 lighttpd 服务器
6、配置:
mkdir /etc/lighttpd
cp lighttpd.conf /etc/lighttpd/lighttpd.conf
cp modules.conf /etc/lighttpd
cp -r conf.d/ /etc/lighttpd
vi /etc/lighttpd/lighttpd.conf
修改server.bind的信息
server.bind = "0.0.0.0"
mkdir -p /srv/www/htdocs
往htdocs中添加测试文件
echo "hello world" > /srv/www/htdocs/index.html
8、启动:
[root@CCY sbin]# ./lighttpd -f /usr/local/sbin/lighttpd
2023-07-30 15:14:53: (configfile.c.2133) source: /usr/local/sbin/lighttpd line: 1 pos: 0 invalid character in variable name
2023-07-30 15:14:53: (configfile.c.2185) configfile parser failed at: (null)
9、写个服务脚本:
#! /bin/bash
# lighttpd Startup script for the lighttpd server
# chkconfig: - 85 15
# description:Lightning fast webserver with light system requirements
# processname: lighttpd
# config: /etc/lighttpd/lighttpd.conf
# config: /var/sysconfig/lighttpd
# pidfile: /var/run/lighttpd.pid
# Note: pidfile is assumed to be created
# by lighttpd (config: server.pid-file).
# If not, uncomment 'pidof' line.
# Source function library
. /etc/rc.d/init.d/functions
if [ -f /etc/sysconfig/lighttpd ];
then
./etc/sysconfig/lighttpd
fi
if [ -z "$LIGHTTPD_CONF_PATH" ];
then
LIGHTTPD_CONF_PATH="/ect/lighttpd/lighttpd.conf"
fi
prog="lighttpd"
lighttpd="/usr/sbin/lighttpd"
RETVAL=0
start() {
echo -n $"Starting $prog: "
daemon $lighttpd -f $LIGHTTPD_CONF_PATH
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
return $RETVAL
}
stop() {
echo -n $"Stopping $prog: "
killproc $lighttpd
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -r /var/lock/subsys/$prog
return $RETVAL
}
reload() {
echo -n $"Reloading $prog: "
daemon $lighttpd -HUP
RETVAL=$?
echo
return $RETVAL
}
case "$1" in
start)
start
;;
sotp)
stop
;;
restart)
stop
start
;;
condrestart)
if [ -f /var/lock/subsys/$prog ];
then
stop
start
fi
;;
reload)
reload
;;
status)
status $lighttpd
RETVAL=$?
;;
*)
echo $"Usage: $0 {start|stop|restart|condrestart|reload|status}"
ERTVAL=1
esac
exit $RETVAL