如何在 Ubuntu 15.04/CentOS 7 中安装 Lighttpd Web 服务器

简介:

Lighttpd 是一款开源 Web 服务器软件。Lighttpd 安全快速,符合行业标准,适配性强并且针对高配置环境进行了优化。相对于其它的 Web 服务器而言,Lighttpd 占用内存更少;因其对 CPU 占用小和对处理速度的优化而在效率和速度方面从众多 Web 服务器中脱颖而出。而 Lighttpd 诸如 FastCGI、CGI、认证、输出压缩、URL 重写等高级功能更是那些面临性能压力的服务器的福音。

以下便是我们在运行 Ubuntu 15.04 或 CentOS 7 Linux 发行版的机器上安装 Lighttpd Web 服务器的简要流程。

安装Lighttpd

使用包管理器安装

这里我们通过使用包管理器这种最简单的方法来安装 Lighttpd。只需以 sudo 模式在终端或控制台中输入下面的指令即可。

CentOS 7

由于 CentOS 7.0 官方仓库中并没有提供 Lighttpd,所以我们需要在系统中安装额外的软件源 epel 仓库。使用下面的 yum 指令来安装 epel。

 
  1. # yum install epel-release

然后,我们需要更新系统及为 Lighttpd 的安装做前置准备。

 
  1. # yum update
  2. # yum install lighttpd

Install Lighttpd Centos

Ubuntu 15.04

Ubuntu 15.04 官方仓库中包含了 Lighttpd,所以只需更新本地仓库索引并使用 apt-get 指令即可安装 Lighttpd。

 
  1. # apt-get update
  2. # apt-get install lighttpd

Install lighttpd ubuntu

从源代码安装 Lighttpd

如果想从 Lighttpd 源码安装最新版本(例如 1.4.39),我们需要在本地编译源码并进行安装。首先我们要安装编译源码所需的依赖包。

 
  1. # cd /tmp/
  2. # wget http://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.39.tar.gz

下载完成后,执行下面的指令解压缩。

 
  1. # tar -zxvf lighttpd-1.4.39.tar.gz

然后使用下面的指令进行编译。

 
  1. # cd lighttpd-1.4.39
  2. # ./configure
  3. # make

注:在这份教程中,我们安装的是默认配置的 Lighttpd。其他拓展功能,如对 SSL 的支持,modrewrite,modredirect 等,需自行配置。

当编译完成后,我们就可以把它安装到系统中了。

 
  1. # make install

设置 Lighttpd

如果有更高的需求,我们可以通过修改默认设置文件,如/etc/lighttpd/lighttpd.conf,来对 Lighttpd 进行进一步设置。 而在这份教程中我们将使用默认设置,不对设置文件进行修改。如果你曾做过修改并想检查设置文件是否出错,可以执行下面的指令。

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

使用 CentOS 7

在 CentOS 7 中,我们需创建一个在 Lighttpd 默认配置文件中设置的 webroot 文件夹,例如/src/www/htdocs

 
  1. # mkdir -p /srv/www/htdocs/

而后将默认欢迎页面从/var/www/lighttpd复制至刚刚新建的目录中:

 
  1. # cp -r /var/www/lighttpd/* /srv/www/htdocs/

开启服务

现在,通过执行 systemctl 指令来重启 Web 服务。

 
  1. # systemctl start lighttpd

然后我们将它设置为伴随系统启动自动运行。

 
  1. # systemctl enable lighttpd

设置防火墙

如要让我们运行在 Lighttpd 上的网页或网站能在 Internet 或同一个网络内被访问,我们需要在防火墙程序中设置打开 80 端口。由于 CentOS 7 和 Ubuntu15.04 都附带 Systemd 作为默认初始化系统,所以我们默认用的都是 firewalld。如果要打开 80 端口或 http 服务,我们只需执行下面的命令:

 
  1. # firewall-cmd --permanent --add-service=http
  2. success
  3. # firewall-cmd --reload
  4. success

连接至 Web 服务器

在将 80 端口设置为默认端口后,我们就可以直接访问 Lighttpd 的默认欢迎页了。我们需要根据运行 Lighttpd 的设备来设置浏览器的 IP 地址和域名。在本教程中,我们令浏览器访问 http://lighttpd.linoxide.com/ ,同时将该子域名指向上述 IP 地址。如此一来,我们就可以在浏览器中看到如下的欢迎页面了。

Lighttpd Welcome Page

此外,我们可以将网站的文件添加到 webroot 目录下,并删除 Lighttpd 的默认索引文件,使我们的静态网站可以在互联网上访问。

如果想在 Lighttpd Web 服务器中运行 PHP 应用,请参考下面的步骤:

安装 PHP5 模块

在 Lighttpd 成功安装后,我们需要安装 PHP 及相关模块,以在 Lighttpd 中运行 PHP5 脚本。

使用 Ubuntu 15.04

 
  1. # apt-get install php5 php5-cgi php5-fpm php5-mysql php5-curl php5-gd php5-intl php5-imagick php5-mcrypt php5-memcache php-pear

使用 CentOS 7

 
  1. # yum install php php-cgi php-fpm php-mysql php-curl php-gd php-intl php-pecl-imagick php-mcrypt php-memcache php-pear lighttpd-fastcgi

设置 Lighttpd 的 PHP 服务

如要让 PHP 与 Lighttpd 协同工作,我们只要根据所使用的发行版执行如下对应的指令即可。

使用 CentOS 7

首先要做的便是使用文件编辑器编辑 php 设置文件(例如/etc/php.ini)并取消掉对cgi.fix_pathinfo=1这一行的注释。

 
  1. # nano /etc/php.ini

完成上面的步骤之后,我们需要把 PHP-FPM 进程的所有权从 Apache 转移至 Lighttpd。要完成这些,首先用文件编辑器打开/etc/php-fpm.d/www.conf文件。

 
  1. # nano /etc/php-fpm.d/www.conf

然后在文件中增加下面的语句:

 
  1. user = lighttpd
  2. group = lighttpd

做完这些,我们保存并退出文本编辑器。然后从/etc/lighttpd/modules.conf设置文件中添加 FastCGI 模块。

 
  1. # nano /etc/lighttpd/modules.conf

然后,去掉下面语句前面的#来取消对它的注释。

include "conf.d/fastcgi.conf"

最后我们还需在文本编辑器设置 FastCGI 的设置文件。

 
  1. # nano /etc/lighttpd/conf.d/fastcgi.conf

在文件尾部添加以下代码:

 
  1. fastcgi.server += ( ".php" =>
  2. ((
  3. "host" => "127.0.0.1",
  4. "port" => "9000",
  5. "broken-scriptfilename" => "enable"
  6. ))
  7. )

在编辑完成后保存并退出文本编辑器即可。

使用 Ubuntu 15.04

如需启用 Lighttpd 的 FastCGI,只需执行下列代码:

 
  1. # lighttpd-enable-mod fastcgi
  2. Enabling fastcgi: ok
  3. Run /etc/init.d/lighttpd force-reload to enable changes
  4. # lighttpd-enable-mod fastcgi-php
  5. Enabling fastcgi-php: ok
  6. Run `/etc/init.d/lighttpd` force-reload to enable changes

然后,执行下列命令来重启 Lighttpd。

 
  1. # systemctl force-reload lighttpd

检测 PHP 工作状态

如需检测 PHP 是否按预期工作,我们需在 Lighttpd 的 webroot 目录下新建一个 php 文件。本教程中,在 Ubuntu 下 /var/www/html 目录,CentOS 下 /src/www/htdocs 目录下使用文本编辑器创建并打开 info.php。

使用 CentOS 7

 
  1. # nano /var/www/info.php

使用 Ubuntu 15.04

 
  1. # nano /srv/www/htdocs/info.php

然后只需将下面的语句添加到文件里即可。

 
  1. <?php phpinfo(); ?>

在编辑完成后保存并推出文本编辑器即可。

现在,我们需根据路径 http://lighttpd.linoxide.com/info.php 下的 info.php 文件的 IP 地址或域名,来让我们的网页浏览器指向系统上运行的 Lighttpd。如果一切都按照以上说明进行,我们将看到如下图所示的 PHP 页面信息。

phpinfo lighttpd

原文发布时间为:2016-07-07

本文来自云栖社区合作伙伴“Linux中国”

相关文章
|
26天前
|
Ubuntu JavaScript 关系型数据库
在阿里云Ubuntu 20.04服务器中搭建一个 Ghost 博客
在阿里云Ubuntu 20.04服务器上部署Ghost博客的步骤包括创建新用户、安装Nginx、MySQL和Node.js 18.x。首先,通过`adduser`命令创建非root用户,然后安装Nginx和MySQL。接着,设置Node.js环境,下载Nodesource GPG密钥并安装Node.js 18.x。之后,使用`npm`安装Ghost-CLI,创建Ghost安装目录并进行安装。配置过程中需提供博客URL、数据库连接信息等。最后,测试访问前台首页和后台管理页面。确保DNS设置正确,并根据提示完成Ghost博客的配置。
在阿里云Ubuntu 20.04服务器中搭建一个 Ghost 博客
|
1月前
|
Ubuntu 网络协议 Java
【Android平板编程】远程Ubuntu服务器code-server编程写代码
【Android平板编程】远程Ubuntu服务器code-server编程写代码
|
1月前
|
存储 资源调度 应用服务中间件
浅谈本地开发好的 Web 应用部署到 ABAP 应用服务器上的几种方式
浅谈本地开发好的 Web 应用部署到 ABAP 应用服务器上的几种方式
26 0
|
2月前
|
存储 Ubuntu 网络协议
|
2月前
|
数据可视化 Shell Linux
shell+crontab+gitlab实现ecs服务器文件的web展示
本文通过把ecs服务器上的文件定时上传至gitlab,实现文件的页面可视化和修改历史。技术点:shell、crontab、gitlab。
50 3
|
18天前
|
Ubuntu Linux 虚拟化
【Linux】ubuntu安装samba服务器
【Linux】ubuntu安装samba服务器
|
1月前
|
应用服务中间件 Apache nginx
web后端-web服务器对比
web后端-web服务器对比
|
1月前
|
Ubuntu 网络协议 Java
在Android平板上使用code-server公网远程Ubuntu服务器编程
在Android平板上使用code-server公网远程Ubuntu服务器编程
|
2月前
|
安全 网络安全 开发者
如何在OpenWRT部署uhttpd搭建服务器实现远程访问本地web站点
如何在OpenWRT部署uhttpd搭建服务器实现远程访问本地web站点
97 0
|
2月前
|
存储 缓存 网络协议
Go语言并发编程实战:构建高性能Web服务器
【2月更文挑战第6天】本文将通过构建一个高性能的Web服务器实战案例,深入探讨如何在Go语言中运用并发编程技术。我们将利用goroutine和channel实现高效的请求处理、资源管理和并发控制,以提升Web服务器的性能和稳定性。通过这一实战,你将更好地理解和掌握Go语言在并发编程方面的优势和应用。

热门文章

最新文章