我的编程空间,编程开发者的网络收藏夹
学习永远不晚

在CentOS服务器上如何安装配置LEMP

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

在CentOS服务器上如何安装配置LEMP

本篇内容介绍了“在CentOS服务器上如何安装配置LEMP”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

LEMP 组合包是一款日益流行的网站服务组合软件包,在许多生产环境中的核心网站服务上起着强有力的作用。正如其名称所暗示的, LEMP 包是由 Linux、nginx、MariaDB/MySQL 和 PHP 组成的。在传统的 LAMP 包中使用的 Apache HTTP 协议服务器性能低下而且难于大规模集群,相比来说 nginx 的高性能及轻量级等特性,正是其的替代方案。 MariaDB 是一款社区支持驱动的 MySQL 数据库的分支,其功能更多性能更佳。PHP,服务端编程语言,具体是由 PHP FastCGI 的增强版 PHP-FPM 组件来处理,生成网页动态内容。

(LCTT 译注:为何采用 LEMP 而不是 LNMP 的缩写?据 https://lemp.io/ 的解释:Nginx 的发音是 Engine-X,重要的发音而不是首字母,而且 LEMP 实际上是可读的,而 LNMP 看起来只是字母表。)

这篇文章里,我们示范如何在 CentOS 操作平台上安装 LEMP 包。我们安装的目标是 CentOS 6 和 CentOS 7 两个操作平台,如有必要会指出它们的不同。
第一步: Nginx

让我们在 CentOS 上安装 nginx 作为第一步,然后对它作些基本的配置,比如使其能引导时启动和对防火墙做个性化设置。
安装 Nginx

让我们从它的官方的 RPM 源来安装一个预构建的稳定版本的 nginx 包。

在 CentOS 7 系统上:  

代码如下:

$ sudo rpm --import http://nginx.org/keys/nginx_signing.key
   $ sudo rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
   $ sudo yum install nginx

在 CentOS 6 系统上:  

代码如下:

$ sudo rpm --import http://nginx.org/keys/nginx_signing.key
   $ sudo rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
   $ sudo yum install nginx

注意在安装 nginx RPM 包之前,如果您没有导入 nginx 的官方 GPG 密钥的话,会出一如下所示的警告:   

代码如下:

warning: /var/tmp/rpm-tmp.KttVHD: Header V4 RSA/SHA1 Signature, key ID 7bd9bf62: NOKEY

启动 Nginx

安装完成后,nginx 是不会自动启动的。现在让我们来启动它吧,还要做些配置让其可以随着操作系统启动而启动。我们也需要在防火墙里打开 TCP/80 端口,以使得可以远程访问 nginx 的 web 服务。所有这些操作、设置都只需要输入如下命令就可实现。

在 CentOS 7 系统上:   

代码如下:

$ sudo systemctl start nginx
   $ sudo systemctl enable nginx
   $ sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
   $ sudo firewall-cmd --reload

在 CentOS 6 系统上:   

代码如下:

$ sudo service nginx start
   $ sudo chkconfig nginx on
   $ sudo iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT
   $ sudo service iptables save

测试 Nginx

nginx 的默认文档要目录是 /usr/share/nginx/html。默认的 index.html 文件一定已经在这目录下了。让我们检测下是否可以访问到这个测试 web 页,输入 http://nginx的ip地址/ 访问。
在CentOS服务器上如何安装配置LEMP

如果您看到的是如上所示的页面的话,说明 nginx 已经正常启动。
第二步: MariaDB/MySQL

下一步就是安装 LEMP 包的数据库组件。CentOS/RHEL 6 或早期的版本中提供的是 MySQL 的服务器/客户端安装包,但 CentOS/RHEL 7 已使用了 MariaDB 替代了默认的 MySQL。作为 MySQL 的简单替代品,MariaDB 保证了与 MySQL 的 API 和命令行用法方面最大的兼容性。下面是关于怎么在 CentOS 上安装和配置 MaraDB/MySQL 的操作示例。

在 CentOS 7 系统上:

如下所示操作来安装 MariaDB 服务/客户端包以及启动 MariaDB 服务。  

代码如下:

$ sudo yum install mariadb-server
   $ sudo systemctl start mariadb
   $ sudo systemctl enable mariadb

在 CentOS 6 系统上:

如下示,安装 MySQL 服务/客户端包并且启动 MySQL 服务。   

代码如下:

$ sudo yum install mysql-server
   $ sudo service mysqld start
   $ sudo chkconfig mysqld on

在成功启动 MariaDB/MySQL 服务后,执行在 MariaDB/MySQL 服务包中的脚本。这一次的运行会为为数据库服务器进行一些安全强化措施,如设置(非空)的 root 密码、删除匿名用户、锁定远程访问。    

代码如下:

$ sudo mysql_secure_installation

在CentOS服务器上如何安装配置LEMP

这就是数据库的设置。现在进行下一步。
第三步: PHP

PHP 是 LEMP 包中一个重要的组件,它负责把存储在 MariaDB/MySQL 服务器的数据取出生成动态内容。为了 LEMP 需要,您至少需要安装上 PHP-FPM 和 PHP-MySQL 两个模块。PHP-FPM(FastCGI 进程管理器)实现的是 nginx 服务器和生成动态内容的 PHP 应用程序的访问接口。PHP-MySQL 模块使 PHP 程序能访问 MariaDB/MySQL 数据库。
安装 PHP 模块

在 CentOS 7 系统上:   

代码如下:

$ sudo yum php php-fpm php-mysql

在 CentOS 6 系统上:

首先,您需要从仓库中安装 REMI 库(参见本指南),并安装软件包。   

代码如下:

$ sudo yum --enablerepo=remi install php php-fpm php-mysql

在CentOS服务器上如何安装配置LEMP

在安装 PHP 时,得注意两个地方:

在 CentOS 6 系统中,安装 REMI仓库中最新的 php-mysql 模块时,MySQL 的服务端包和客户端包会被当做一部分依赖包而自动的更新。

在 CentOS 6 和 CentOS 7 中,在安装 PHP 包的同时会把 Apache web 服务器(即 httpd)当做它的依赖包一起安装。这会跟 nginx web 服务器起冲突。这个问题会在下一节来讨论。

取决于您的使用情况,可以使用 yum 命令来定制您的 PHP 引擎,也许会想安装下面的任意一个扩展 PHP 模块包。

  •     php-cli: PHP 的命令行界面。从命令行里测试 PHP 时非常有用。
        php-gd: PHP 的图像处理支持。
        php-bcmath: PHP 的数学支持。
        php-mcrypt: PHP 的加密算法支持 (例如 DES、Blowfish、CBC、 CFB、ECB ciphers 等)。
        php-xml: PHP 的 XML 解析和处理支持。
        php-dba: PHP 的数据抽象层支持。
        php-pecl-apc: PHP 加速器/缓存支持。

安装时,要查看可用的 PHP 模块的完整列表的话,可以运行:   

代码如下:

$ sudo yum search php- (CentOS 7)
   $ sudo yum --enablerepo=remi search php- (CentOS 6)

启动 PHP-FPM

您需要启动 PHP-FPM ,然后把它放到自动启动服务列表。

在 CentOS 7 系统上:   

代码如下:

$ sudo systemctl start php-fpm
   $ sudo systemctl enable php-fpm

在 CentOS 6 系统上: 

代码如下:

$ sudo chkconfig php-fpm on
   $ sudo service php-fpm start

第四步: 配置 LEMP 组合包

本教程的最后一步是调整 LEMP 组合包的配置。
使 Httpd 不可用

首先,让我们把早先随 PHP 包安装的 httpd 服务给禁用掉。

在 CentOS 7 系统上:   

代码如下:

$ sudo systemctl disable httpd

在 CentOS 6 系统上:   

代码如下:

$ sudo chkconfig httpd off

配置 Nginx

接下来,让我们配置 nginx 虚拟主机,使得 nginx 可以通过 PHP-FPM 来处理 PHP 的任务。用文本编辑器打开 /etc/nginx/conf.d/default.conf ,然后按如下所示修改。    

代码如下:

$ sudo vi /etc/nginx/conf.d/default.conf </p><p>    server {
       listen       80;
       server_name  www.server_domain.com;
       root   /usr/share/nginx/html;
       index  index.php index.html index.htm;
   
       location / {
       }
   
       # redirect server error pages to the static page /50x.html
       error_page   500 502 503 504  /50x.html;
       location = /50x.html {
       }
   
       # nginx passes PHP scripts to FastCGI server via a TCP/9000 socket
       # this setting much be consistent with /etc/php-fpm.d/www.conf
       # try_files prevents nginx from passing bad scripts to FastCGI server
       location ~ \.php$ {
           try_files $uri =404;
           fastcgi_pass 127.0.0.1:9000;
           fastcgi_index index.php;
           fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
           include fastcgi_params;
       }
   }

nginx 的默认工作线程数(在 /etc/nginx/nginx.conf 文件中指定的)是 1,让我们也来调整一下这个数字。通常来说我们创建的工作线程数应该和 CPU 核数相同。要确信您的 CPU 的核数,请运行下面这命令:   

代码如下:

$ grep processor /proc/cpuinfo | wc -l

如果您的 CPU 是 4 核的,就如下所示修改 /etc/nginx/nginx.conf 文件。   

代码如下:

$ sudo vi /etc/nginx/nginx.conf </p><p>    worker_processes  4;

配置 PHP

接下来,让我们对 PHP 的配置文件 /etc/php.ini 做自定义设置。更具体的就是在 /etc/php.ini 文件中增加以下两行。  

代码如下:

cgi.fix_pathinfo=0
   date.timezone = "PRC"

为了安全起见,我们希望的是 PHP 解释器只是处理指定文件路径的文件任务,而不是预测搜索一些并不存在的文件任务。上面的第一行起的就是这个作用。(LCTT 译注:原文用的时区是“America/New York”,根据国内情况,应该用 PRC或 Asia 下的中国城市。)

第二行定义的是 PHP 中日期/时间相关函数使用相关的默认时区。使用本指南,找出您所在的时区,并设置相应 date.timezone 的值。
测试 PHP

最后,让我们来测试下 nginx 是否能处理 PHP 页面。在测试之前,请确保重启 nginx 和 PHP-FPM。

在 CentOS 7 系统上:   

代码如下:

$ sudo systemctl restart nginx
   $ sudo systemctl restart php-fpm

在 CentOS 6 系统上:   

代码如下:

$ sudo service nginx restart
   $ sudo service php-fpm restart

创建一个叫名叫 test.php 的文件,然后写入如下内容,并放入 /usr/share/nginx/html 目录。   

代码如下:

<?php phpinfo(); ?>

打开浏览器,输入 http://nginx的IP地址/test.php 。
在CentOS服务器上如何安装配置LEMP

如果您能看到如上所示的页面,说明设置的 LEMP 完全成功!

“在CentOS服务器上如何安装配置LEMP”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

在CentOS服务器上如何安装配置LEMP

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

在CentOS服务器上如何安装配置LEMP

本篇内容介绍了“在CentOS服务器上如何安装配置LEMP”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!LEMP 组合包是一款日益流行的网站
2023-06-10

如何在CentOS上安装和配置NFS服务器

要在CentOS上安装和配置NFS服务器,您可以按照以下步骤进行操作:安装NFS服务器软件包:sudo yum install nfs-utils启动NFS服务并设置其在系统启动时自动启动:sudo systemctl enable nfs
如何在CentOS上安装和配置NFS服务器
2024-04-25

如何在CentOS 8上安装和配置Postfix邮件服务器

如何在CentOS 8上安装和配置Postfix邮件服务器,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Postfix是一个开源的电子邮件服务器,。Postfi
2023-06-28

如何在CentOS中安装和配置Nginx服务器

在CentOS中安装和配置Nginx服务器的步骤如下:更新系统:首先确保系统已更新到最新版本,可以通过以下命令来更新系统:sudo yum update安装Nginx:使用以下命令安装Nginx:sudo yum install nginx
如何在CentOS中安装和配置Nginx服务器
2024-03-12

如何在CentOS中安装和配置OpenSSH服务器

要在CentOS中安装和配置OpenSSH服务器,您可以按照以下步骤进行:安装OpenSSH服务器:在终端中运行以下命令以安装OpenSSH服务器:sudo yum install openssh-server启动OpenSSH服务器:
如何在CentOS中安装和配置OpenSSH服务器
2024-04-09

如何在CentOS中安装和配置NginxWeb服务器

在CentOS中安装和配置Nginx Web服务器可以通过以下步骤完成:安装Nginx:首先需要安装Nginx软件包。可以通过以下命令进行安装:sudo yum install nginx启动Nginx:安装完成后,可以使用以下命令启
如何在CentOS中安装和配置NginxWeb服务器
2024-04-09

如何在CentOS中安装和配置FTP服务器

在CentOS中安装和配置FTP服务器需要进行以下步骤:安装FTP服务器软件:在终端输入以下命令安装vsftpd软件包:sudo yum install vsftpd启动FTP服务器并设置开机自启动:sudo systemctl start
如何在CentOS中安装和配置FTP服务器
2024-04-09

CentOS上如何安装配置GitLab?

GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。 安装 根据在线安装指南进行
2022-05-18

如何在CentOS服务器上配置NTP服务器

这篇文章主要讲解了“如何在CentOS服务器上配置NTP服务器”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何在CentOS服务器上配置NTP服务器”吧!网络时间协议(NTP)用来同步网络
2023-06-10

如何在CentOS上安装Apache Web服务器

要在CentOS上安装Apache Web服务器,可以按照以下步骤进行操作:打开终端窗口,并以root用户身份登录。运行以下命令来更新系统软件包列表:yum update运行以下命令安装Apache软件包:yum install httpd
如何在CentOS上安装Apache Web服务器
2024-04-25

如何在CentOS 7上安装Redis服务器

如何在CentOS 7上安装Redis服务器,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。Redis是使用使用 ANSI C 编写的开源的多平台数据存储软件,R
2023-06-28

如何在CentOS中安装配置FTP服务器软件VSFTP

这篇文章主要介绍“如何在CentOS中安装配置FTP服务器软件VSFTP”,在日常操作中,相信很多人在如何在CentOS中安装配置FTP服务器软件VSFTP问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何在
2023-06-10

如何在CentOS中安装和配置Tomcat应用服务器

在CentOS中安装和配置Tomcat应用服务器有以下步骤:使用以下命令安装Tomcat:sudo yum install tomcat启动Tomcat服务:sudo systemctl start tomcat设置Tomcat服务开机自启
如何在CentOS中安装和配置Tomcat应用服务器
2024-03-13

如何在CentOS上安装和配置PostgreSQL数据库

以下是在CentOS上安装和配置PostgreSQL数据库的步骤:更新系统软件包:首先,使用以下命令更新系统的软件包:sudo yum update安装PostgreSQL:接下来,使用以下命令安装PostgreSQL数据库:sudo
如何在CentOS上安装和配置PostgreSQL数据库
2024-04-25

在CentOS 7.5上安装和配置ProFTPD

ProFTPd是一个开源FTP守护程序,ProFTPd是一种开源FTP守护程序,由于其能实现粒度更细的权限配置能力而被广泛使用。 这是为CentOS 7以及CentOS 6及以下版本提供安装方法的指南。 您可以在项目的网站上阅读有关ProF
2023-06-05

在 centos 上安装配置 MySQL8.0 教程

在 centos7 上安装配置 MySQL8.0 教程 在 Centos 环境上的安装配置安装配置连接 在 Centos 环境上的安装配置 安装环境为:在 win11系统 -> virtualbox 虚拟机 -> cento
2023-08-17

编程热搜

目录