位置: 编程技术 - 正文

在CentOS服务器上安装配置LEMP的详细教程(centos搭建服务器)

编辑:rootadmin

推荐整理分享在CentOS服务器上安装配置LEMP的详细教程(centos搭建服务器),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:centos安装服务器,用centos搭建服务器的详细教程,用centos搭建服务器的详细教程,用centos搭建服务器的详细教程,用centos搭建服务器的详细教程,centos5.8服务器,centos5.8服务器,用centos搭建服务器的详细教程,内容如对您有帮助,希望把文章链接给更多的朋友!

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

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

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

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

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

在 CentOS 7 系统上:

复制代码代码如下: $ sudo rpm --import $ sudo rpm -ivh $ sudo yum install nginx

在 CentOS 6 系统上:

复制代码代码如下:$ sudo rpm --import $ sudo rpm -ivh $ sudo yum install nginx

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

复制代码代码如下: warning: /var/tmp/rpm-tmp.KttVHD: Header V4 RSA/SHA1 Signature, key ID 7bd9bf: NOKEY

启动 Nginx

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

在 CentOS 7 系统上:

复制代码代码如下:$ sudo systemctl start nginx $ sudo systemctl enable nginx $ sudo firewall-cmd --zone=public --add-port=/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 -j ACCEPT $ sudo service iptables save

测试 Nginx

nginx 的默认文档要目录是 /usr/share/nginx/html。默认的 index.html 文件一定已经在这目录下了。让我们检测下是否可以访问到这个测试 web 页,输入 访问。

如果您看到的是如上所示的页面的话,说明 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

这就是数据库的设置。现在进行下一步。第三步: 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

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

在CentOS服务器上安装配置LEMP的详细教程(centos搭建服务器)

在 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 ; 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 /x.html error_page /x.html; location = /x.html { } # nginx passes PHP scripts to FastCGI server via a TCP/ 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 =; fastcgi_pass .0.0.1:; 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(); ?>

打开浏览器,输入 。

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

在CentOS系统上安装Docker的教程 Docker是一个开源工具,它可以让创建和管理Linux容器变得简单。容器就像是轻量级的虚拟机,并且可以以毫秒级的速度来启动或停止。Docker帮助系统管理

在CentOS中制作BGP路由的教程 Quagga是一个开源路由软件套件。在这个教程中,我将会重点讲讲如何把一个Linux系统变成一个BGP路由器,还是使用Quagga,演示如何建立BGP与其它BGP路由器

在CentOS的防火墙上开启通行端口的方法 如果希望在服务器上提供服务,诸如CentOS或RHEL的企业级Linux发行版包含内置的强大防火墙,它们默认的防火墙规则十分严格。因此,如果你安装了任何

标签: centos搭建服务器

本文链接地址:https://www.jiuchutong.com/biancheng/363315.html 转载请保留说明!

上一篇:在Windows上制作CentOS自动安装的光盘的教程(如何在windows制作表格)

下一篇:在CentOS系统上安装Docker的教程(centos 安装)

  • 对方给我公司开的红字发票如何查询
  • 个人所得税6月底没有退怎办
  • 出口货物发生退运是征税还是免税
  • 无形资产处置收益计入
  • 公司自用车辆出售如何交税
  • 处置其他权益工具投资时,应按取得的价款
  • 投资款返还案例
  • 出纳都需要做什么表格
  • 应收账款增值税专用发票
  • 开具的发票是否为印花税的应税凭证?
  • 退税后钱到哪里
  • 担保公司做担保怎么收费
  • 收到违约金需要缴纳所得税吗
  • 定额发票用来干嘛
  • 服务行业有哪些工作
  • 员工福利费是否计入赔偿
  • 航天信息300元是什么费用
  • 工会经费由谁审批
  • 邮局劳务费发票几个点
  • 清算汇缴报表填写模板
  • 支票能够拿来付款吗
  • 我的初级备考经验--有种力量叫坚持
  • 增值税交完之后还要交什么税
  • 会计与税法折旧的关系
  • 所得税报表里的资产总额在哪里取数
  • 房地产企业收到房款账务处理
  • 为什么电脑开启了摄像头但是看不见
  • 房屋出租预收租金房产税纳税义务发生时间
  • openssh centos
  • 涉税服务实务重点总结
  • wordpress抓取网页
  • $(window).resize
  • 企业发生的诉讼费用
  • 贷款和应收款项应采用实际利率法,按摊余成本计量
  • 辅料分配方法
  • 准予在企业所得税税前扣除的有
  • 悉尼奥林匹克公园
  • 搭建自己的php框架
  • 银行提取现金会查征信吗
  • 自然人税收系统换电脑怎么同步数据
  • thinkphp3.x中session方法的用法分析
  • 当年实现的利润弥补以前年度亏损还是提盈余公积
  • java基础网络编程
  • c语音进阶
  • 命令arp-a
  • 跨平台 gui
  • <四>2:掌握Const 与一二级指针结合应用
  • pycharm pypy
  • 小规模公司都交哪些税
  • 定额计税的有哪些
  • 原材料的会计处理有哪些
  • mysql错误提示
  • 生育津贴的支付期限表述不正确的是
  • 股东权益合计等于净资产吗
  • 股东投入的资金
  • 增值税发票开负数怎么做账?
  • 分支机构与总机构怎么纳税?
  • 管理费用如何结转成本
  • 公司汽车上牌费用多少
  • MySQL(win7x64 5.7.16版本)下载、安装、配置与使用的详细图文教程
  • centos如何挂载镜像
  • nfs安装配置
  • 如何使用一键启动
  • win10动态磁贴照片如何删除
  • 磁盘空间不足怎么弄
  • linux服务器dns配置安装
  • ExtJS4 Grid改变单元格背景颜色及Column render学习
  • node操作mongodb数据库
  • u3d手游开发
  • angularjs2
  • web标准包含哪些
  • shell脚本 -ne 0
  • jquery动画效果代码
  • javascript学习指南
  • Button.setOnClickListener(OnClickListener l) 原理
  • JavaScript split()使用方法与示例
  • jq倒计时代码
  • 卷烟批发环节的税率
  • 深圳监狱在哪个位置
  • 伊朗开心果进口价格
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设