在 RHEL/CentOS 7.0 中安装 LAMP

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介:

跳过 LAMP 的介绍,因为我认为你们大多数已经知道了。这个教程会集中在如何在升级到 Apache 2.4 的 Red Hat Enterprise Linux 7.0 和 CentOS 7.0 中安装和配置 LAMP:Linux、Apache、 MariaDB、 PHP/PhpMyAdmin。

在 RHEL/CentOS 7.0 中安装 LAMP

在 RHEL/CentOS 7.0 中安装 LAMP

前置要求

根据使用的发行版是 RHEL 还是 CentOS 7.0,按照下面的链接来进行最小化的系统安装,网络使用静态 IP。

对于 RHEL 7.0

对于 CentOS 7.0

第一步:使用基本配置安装apache

1、在完成最小化系统安装,并在 RHEL/CentOS 7.0 上配置静态 IP 后,就可以使用下面的命令从官方仓库安装最新的 Apache 2.4 httpd 服务了。


 
 
  1. # yum install httpd

安装 apache 服务

安装 apache 服务

2、安装完成后,使用下面的命令来管理apache守护进程,因为 RHEL 和 CentOS 7.0 都将 init 脚本从 SysV 升级到了systemd,所以同时你还可以使用 SysV 脚本和 Apache 脚本来管理服务。


 
 
  1. # systemctl status|start|stop|restart|reload httpd
  2. 或者
  3. # service httpd status|start|stop|restart|reload
  4. 或者
  5. # apachectl configtest| graceful

启动apache服务

启动apache服务

3、在使用 systemd 初始化脚本来启动 apache 服务后,要用 firewall-cmd 打开 RHEL/CentOS 7.0 防火墙规则, 这是通过 firewalld 守护进程管理 iptables 的默认命令。**


 
 
  1. # firewall-cmd --add-service=http

注意:上面的命令会在系统重启或者 firewalld 服务重启后失效,因为它是即时的规则,它不会永久生效。要使 iptables 规则在 fiewalld 中持久化,使用 --permanent 选项并重启 firewalld 服务来生效。(LCTT 译注:也可以不重启 firewalld 服务,而是再执行一遍不带 --permanent 选项的命令。)


 
 
  1. # firewall-cmd --permanent --add-service=http
  2. # systemctl restart firewalld

在 CentOS 7 中启用防火墙

在 CentOS 7 中启用防火墙

下面是 firewalld 其他的重要选项:


 
 
  1. # firewall-cmd --state
  2. # firewall-cmd --list-all
  3. # firewall-cmd --list-interfaces
  4. # firewall-cmd --get-service
  5. # firewall-cmd --query-service service_name
  6. # firewall-cmd --add-port=8080/tcp

4、要验证 apache 的功能,打开一个远程浏览器并使用 http 协议访问你服务器的 IP 地址(http://server_IP), 应该会显示下图中的默认页面。

Apache 默认页

Apache 默认页

5、现在 apache 的根地址在 /var/www/html,该目录中没有提供任何索引文件。如果你想要看见根目录下的文件夹列表,打开 apache 欢迎配置文件并设置 <LocationMach> 下 Indexes 前的状态从-+,下面的截图就是一个例子。


 
 
  1. # nano /etc/httpd/conf.d/welcome.conf

Apache 目录列出

Apache 目录列出

6、关闭文件,重启 apache 服务来使设置生效,重载页面来看最终效果。


 
 
  1. # systemctl restart httpd

Apache 索引文件

Apache 索引文件

第二步:为 Apache 安装 php5 支持

7、在为 apache 安装 php 支持之前,使用下面的命令的得到所有可用的php模块和扩展。


 
 
  1. # yum search php

Install PHP in CentOS 7

Install PHP in CentOS 7

在 CentOS 7 上安装 PHP*

8、根据你所要使用的应用类型,安装上述列表中所需的 PHP 模块。对于 PHP 中的基本的 MariaDB 支持和 PhpMyAdmin,你需要安装如下模块。


 
 
  1. # yum install php php-mysql php-pdo php-gd php-mbstring

安装 PHP 模块

安装 PHP 模块

安装 PHP mbstring 模块

安装 PHP mbstring 模块

9、 要在你的浏览器上显示 PHP 的全部信息,用 root 账号执行如下命令在 Apache 的文档根目录下创建一个 info.php 文件,然后重启 httpd 服务,并在你的浏览器里面访问 http://server_IP/info.php 。


 
 
  1. # echo "<?php phpinfo(); ?>" > /var/www/html/info.php
  2. # systemctl restart httpd

查看 CentOS 7 上的 PHP 信息

查看 CentOS 7 上的 PHP 信息

10、如果你得到一个 PHP 的日期和时区错误,打开配置文件 php.ini,取消 date.timezone 语句的注释,加上你的实际时区参数,然后重启 Apache 守护进程。


 
 
  1. # nano /etc/php.ini

找到并如下修改date.timezone,参考 PHP 支持的时区列表。(LCTT 译注:对于中国,可以使用 Asia/Shanghai、Asia/Chongqing 等,但是不建议使用向后兼容而保留的 PRC。)


 
 
  1. date.timezone = Continent/City

设置 PHP 的时区

设置 PHP 的时区

第三步:安装和配置 MariaDB 数据库

11、 Red Hat Enterprise Linux/CentOS 7.0 使用 MariaDB 替换 MySQL 为默认数据库管理系统。使用如下命令安装 MariaDB 数据库。


 
 
  1. # yum install mariadb-server mariadb

在 CentOS 7中安装 MariaDB

在 CentOS 7中安装 MariaDB

12、安装 MariaDB 后,启动数据库守护进程并使用 mysqlsecureinstallation 脚本来保护数据库(设置数据库的 root 密码、禁止远程 root 登录、移除测试数据库、移除匿名用户等)。


 
 
  1. # systemctl start mariadb
  2. # mysql_secure_installation

启动 MariaDB 数据库

启动 MariaDB 数据库

MariaDB 安全设置

MariaDB 安全设置

13、要测试数据库功能,使用 root 账户登录 MariaDB 并用 quit 退出。


 
 
  1. mysql -u root -p
  2. MariaDB > SHOW VARIABLES;
  3. MariaDB > quit

连接 MariaDB 数据库

连接 MariaDB 数据库

第四步:安装 PhpMyAdmin

14、 RHEL 7.0 或者 CentOS 7.0 仓库默认没有提供 PhpMyAdmin 二进制安装包。如果你不适应使用 MySQL 命令行来管理你的数据库,你可以通过下面的命令启用 CentOS 7.0 rpmforge 仓库来安装 PhpMyAdmin。


 
 
  1. # yum install http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm

启用 rpmforge 仓库后,下面安装 PhpMyAdmin。


 
 
  1. # yum install phpmyadmin

启用 RPMForge 仓库

启用 RPMForge 仓库

15、下面配置 PhpMyAdmin 的 phpmyadmin.conf 来允许远程连接,它位于 Apache 的 conf.d 目录下,并注释掉下面的行。


 
 
  1. # nano /etc/httpd/conf.d/phpmyadmin.conf

使用#来注释掉下列行。


 
 
  1. # Order Deny,Allow
  2. # Deny from all
  3. # Allow from 127.0.0.1

允许远程 PhpMyAdmin 访问

允许远程 PhpMyAdmin 访问

16、 要使用 cookie 验证来登录 PhpMyAdmin,像下面的截图那样使用生成的秘密字符串来添加一个 blowfish 字符串到 config.inc.php 文件中,重启 apache 服务并打开 URL:http://server_IP/phpmyadmin/。


 
 
  1. # nano /etc/httpd/conf.d/phpmyadmin.conf
  2. # systemctl restart httpd

在 PhpMyAdmin 中添加 Blowfish

在 PhpMyAdmin 中添加 Blowfish

PhpMyAdmin 面板

PhpMyAdmin 面板

第五步:在系统范围内启用 LAMP

17、 如果你需要在重启后自动运行 MariaDB 和 Apache 服务,你需要在系统级地启用它们。


 
 
  1. # systemctl enable mariadb
  2. # systemctl enable httpd

系统级启用服务

系统级启用服务

这就是在 Red Hat Enterprise 7.0 或者 CentOS 7.0 中安装 LAMP 的过程。在 CentOS/RHEL 7.0 上关于 LAMP 的系列文章接下来将会讨论在 Apache 中创建虚拟主机,生成 SSL 证书、密钥和添加 SSL 事务支持。


原文发布时间为:2015-07-10


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

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
27天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第16天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括配置系统源、安装 SQL Server 2019 软件包以及数据库初始化,确保 SQL Server 正常运行。
|
1月前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第8天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统准备、配置安装源、安装 SQL Server 软件包、运行安装程序、初始化数据库以及配置远程连接。通过这些步骤,您可以顺利地在 CentOS 系统上部署和使用 SQL Server 2019。
|
1月前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第7天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统要求检查与准备、配置安装源、安装 SQL Server 2019、配置 SQL Server 以及数据库初始化(可选)。通过这些步骤,你可以成功安装并初步配置 SQL Server 2019,进行简单的数据库操作。
|
2月前
|
Linux 网络安全 数据安全/隐私保护
Linux系统之Centos7安装cockpit图形管理界面
【10月更文挑战第12天】Linux系统之Centos7安装cockpit图形管理界面
108 1
Linux系统之Centos7安装cockpit图形管理界面
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。通过具体案例,读者可以了解如何准备环境、下载源码、编译安装、配置服务及登录 MySQL。编译源码安装虽然复杂,但提供了更高的定制性和灵活性,适用于需要高度定制的场景。
102 3
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。
本文介绍了在 CentOS 7 中通过编译源码安装 MySQL 数据库的详细步骤,并与使用 RPM 包安装进行了对比。内容涵盖准备工作、下载源码、编译安装、配置服务、登录设置及实践心得,帮助读者根据需求选择最适合的安装方法。
86 2
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
137 2
|
2月前
|
Linux 知识图谱
Centos7安装killall,fuser, killall,pstree和pstree.x11
通过上述步骤,您已在CentOS 7系统中成功部署了killall、fuser、pstree以及pstree.x11,为高效管理系统进程打下了坚实基础。更多关于服务器管理与优化的知识,获取全面技术支持与解决方案。
71 1
|
2月前
|
监控 安全 Linux
CentOS7下安装配置ntp服务的方法教程
通过以上步骤,您不仅能在CentOS 7系统中成功部署NTP服务,还能确保其配置合理、运行稳定,为系统时间的精确性提供保障。欲了解更多高级配置或遇到特定问题,提供了丰富的服务器管理和优化资源,可作为进一步学习和求助的平台。
120 1
|
1月前
|
存储 安全 Linux
VMware安装CentOS7
【11月更文挑战第11天】本文详细介绍了在 VMware 中安装 CentOS 7 的步骤,包括准备工作、创建虚拟机、配置虚拟机硬件和安装 CentOS 7。具体步骤涵盖下载 CentOS 7 镜像文件、安装 VMware 软件、创建和配置虚拟机硬件、启动虚拟机并进行安装设置,最终完成 CentOS 7 的安装。在安装过程中,需注意合理设置磁盘分区、软件选择和网络配置,以确保系统的性能和功能满足需求。
193 0
下一篇
DataWorks