如何在CentOS6上安装Linux、Lighttpd、MySQL和PHP5(LLMP堆栈)

来自菜鸟教程
跳转至:导航、​搜索

状态: 已弃用

本文介绍了不再受支持的 CentOS 版本。 如果您目前正在运行运行 CentOS 6 的服务器,我们强烈建议您升级或迁移到受支持的 CentOS 版本。

原因: CentOS 6 已于 2020 年 11 月 30 日结束生命周期 (EOL) and no longer receives security patches or updates. For this reason, this guide is no longer maintained.

请参阅:
本指南可能仍可用作参考,但可能不适用于其他 CentOS 版本。 如果可用,我们强烈建议使用为您使用的 CentOS 版本编写的指南。


介绍

Lighttpd 是一个开源 Web 服务器,最初由 Jan Kneschke 编写,作为 Apache 的替代品,它具有低内存占用,并且许多网站(如 YouTube 和 Wikimedia)都运行 Lighttpd 服务器。 MySQL 是用于 Web 应用程序(例如 WordPress)的流行数据库解决方案,通常与服务器端脚本语言 PHP 结合使用。

本教程将向您展示在 CentOs 6 上安装 Lighttpd、PHP 和 MySQL 所需的步骤,以便您可以启动并运行您的 VPS。

假设

本教程中的步骤要求用户具有 root 权限。 您可以在 初始服务器设置教程 中查看如何设置。

第一步 - 先决条件

更新您的系统:

sudo yum update

您需要安装 wget,这是一个使用 HTTP、HTTPS 和 FTP 检索文件的软件包:

sudo yum install wget

请注意,该命令以“sudo”开头。 这将允许您以 root 权限运行指令。

第二步 - 安装 MySQL

要安装 MySQL,请登录您的 VPS 并输入:

sudo yum install mysql-server

为 MySQL 创建一个系统启动链接,以使服务能够在启动时运行:

sudo chkconfig --levels 235 mysqld on

这可能看起来很傻,但最好验证 MySQL 服务器是否正在运行,否则在执行 mysql_secure_installation 命令时会出现 MySQL ERROR 2002 (HY000):

sudo service mysqld status

如果 VPS 未运行,请键入:

sudo service mysqld start

为 MySQL 用户 root 创建密码并执行一些初始配置:

sudo mysql_secure_installation
Enter current password for root (enter for none):_

由于尚未配置 MySQL root 密码,我们只需按 ENTER 并继续设置 MySQL 的过程:

Set root password? [Y/n] y
New password: SQL.ROOT.PASSWORD.EXAMPLE
Re-enter new password: SQL.ROOT.PASSWORD.EXAMPLE
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y

第三步 - 安装 Lighttpd

官方 CentOS 软件库不支持 Lighttpd 和 PHP-FPM,让我们继续将 Remi RPM 和 EPEL 软件库添加到 CentOS:

sudo rpm --import https://fedoraproject.org/static/0608B895.txt
sudo wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
sudo rpm -ivh epel-release-6-8.noarch.rpm

然后运行以下命令安装 Lighttpd:

sudo yum install lighttpd

为 Lighttpd 创建系统启动链接,以使服务在启动时运行:

sudo chkconfig --levels 235 lighttpd on

启动服务并检查它是否正在运行:

sudo service lighttpd start
sudo service lighttpd status

打开您的浏览器并输入您的 VPS' IP http://123.456.789.10,您可以运行以下命令来显示您的 VPS' IP 地址:

ifconfig

应显示 Lighttpd 欢迎页面:

典型错误 - Lighttpd 故障排除

错误 1:Lighttpd 无法启动:“套接字失败:协议不支持地址系列”“请仅将 server.use-ipv6 用于主机名,而不是 server.bind...” ,打开 Lighttpd.conf:

sudo nano /etc/lighttpd/lighttpd.conf

并禁用 IPv6:

##
server.use-ipv6 = "disable"
##

错误 2: 警告 "can't have more connections than fds/2: 1024 1024", open Lighttpd.conf:

sudo nano /etc/lighttpd/lighttpd.conf

取消注释 #server.max-fds = 2048

##
server.max-fds = 2048
##

重启 Lighttpd:

sudo service lighttpd restart
Stopping lighttpd [OK]
Starting lighttpd [OK]

第四步 - 安装 PHP

安装 PHP5 (FPM):

sudo yum install php-fpm lighttpd-fastcgi

打开 www.conf:

sudo nano /etc/php-fpm.d/www.conf

将 lighttpd 添加到用户和组:

; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
;       will be used.
user = lighttpd
; RPM: Keep a group allowed to write in log dir.
group = lighttpd

为 PHP-FPM 创建系统启动链接,使服务能够在启动时运行:

sudo chkconfig --levels 235 php-fpm on

启动服务并检查它是否正在运行:

sudo service php-fpm start
sudo service php-fpm status

安装完成后,我们必须在 Lighttpd 中启用 PHP5。 让我们找到您的 php.ini 文件:

sudo nano /etc/php.ini

并取消注释所需的行:

;
cgi.fix_pathinfo=1
;

打开 fastcgi.conf:

sudo nano /etc/lighttpd/modules.conf

并取消注释这一行:

##
include "conf.d/fastcgi.conf"
##

打开 fastcgi.conf

sudo nano /etc/lighttpd/conf.d/fastcgi.conf

并添加以下行:

## for the php-num-procs example it means you will get 17*5 = 85 php
## processes. you always should need this high number for your very
## busy sites. And if you have a lot of RAM. :)
## ADD YOUR LINES HERE
fastcgi.server += ( ".php" =>
        ((
                "host" => "127.0.0.1",
                "port" => "9000",
                "broken-scriptfilename" => "enable"
        ))
)
## GOOD JOB
#fastcgi.server = ( ".php" =>

安装 MySQL PHP 模块:

sudo yum install php-mysql

重启 Lighttpd 和 PHP-FPM:

sudo service php-fpm restart
sudo service lighttpd restart

第六步(可选)- 使用 info.php 测试 PHP

创建 info.php:

sudo nano /var/www/lighttpd/info.php

添加以下行:

<?php
phpinfo();
?>

打开你的浏览器,进入你的服务器'的IP http://123.456.789.10/info.php。我们可以看到PHP正在通过FPM/FastCGI工作:

并且列出了 MySQL 模块,因此可以正常工作:

仅此而已; 恭喜!