CentOS上安裝 Apache、MySQL8 或MariaDB10和 PHP7
VSole2022-05-25 06:58:25
PHP是世界上最好的語言,你可以反駁,但是我不接受。
本文介紹了如何安裝最新版本的Apache,MySQL 8或者MariaDB 10和PHP 7以及所需的 PHP 模塊RHEL / CentOS 7/6和Fedora 24-29.
我們將用EPEL和Remi存儲庫并使用yum和dnf(Fedora 中可用的新包管理工具)。
第 1 步:安裝 EPEL 和 Remi 存儲庫
EPEL(Extra Packages for Enterprise Linux) 是一個基于社區的存儲庫,為基于 RHEL 的 Linux 發行版提供附加軟件包。
Remi是一個存儲庫,你可以在其中找到最新版本的PHP用于在 Fedora 和 Enterprise Linux 發行版中安裝。
在 RHEL/CentOS 7 上
# yum update && yum install epel-release # rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-rpm ------ `For RHEL 7 Only` ------ # subscription-manager repos --enable=rhel-7-server-optional-rpms
在 RHEL/CentOS 6 上
# yum update && yum install epel-release # rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-rpm ------ `For RHEL 6 Only` ------ # subscription-manager repos --enable=rhel-6-server-optional-rpms
在 Fedora 上 24-29
# rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-rpm [`On Fedora 29`] # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-rpm [`On Fedora 28`] # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-rpm [`On Fedora 27`] # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-rpm [`On Fedora 26`] # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-rpm [`On Fedora 25`] # rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-rpm [`On Fedora 24`]
第 2 步:安裝 Apache Web 服務器
Apache是一個免費和開源的 HTTP Web 服務器,可以在大多數基于 UNIX 的操作系統以及 Windows 上運行。因此,它可用于提供靜態網頁和處理動態內容。安裝 Apache web服務器,首先更新系統軟件包并使用以下命令進行安裝。# yum -y update # yum install httpd # systemctl start httpd # systemctl enable httpd # systemctl status httpd
如果防火墻 firewalld在運行,確保在防火墻上允許 Apache 流量。# firewall-cmd --zone=public --permanent --add-service=http # firewall-cmd --zone=public --permanent --add-service=https # firewall-cmd --reload
第 3 步:使用 Remi Repository 安裝 PHP
PHP(Hypertext Preprocessor) 是一種免費和開源的服務器端腳本語言,最適合 Web 開發。它可用于為網站生成動態網頁。
安裝PHP,首先你需要啟用Remi存儲庫,yum-utils用于管理 yum 存儲庫和包的有用程序的集合。
# yum install yum-utils
安裝后,你可以使用yum-config-manager由提供yum-utils以啟用 Remi 存儲庫作為安裝不同 PHP 版本的默認存儲庫,如圖所示。
例如,要安裝 PHP 7.x 版本,使用以下命令。`------------- `On CentOS & RHEL` -------------` # yum-config-manager --enable remi-php70 && yum install php [`Install PHP 0`] # yum-config-manager --enable remi-php71 && yum install php [`Install PHP 1`] # yum-config-manager --enable remi-php72 && yum install php [`Install PHP 2`] # yum-config-manager --enable remi-php73 && yum install php [`Install PHP 3`] `------------- `On Fedora` -------------` # dnf --enablerepo=remi install php70 [`Install PHP 0`] # dnf --enablerepo=remi install php71 [`Install PHP 1`] # dnf --enablerepo=remi install php72 [`Install PHP 2`] # dnf --enablerepo=remi install php73 [`Install PHP 3`]
接下來,我們將在本文中安裝以下所有這些 PHP 模塊。你可以使用以下命令搜索更多與 PHP 相關的模塊(可能是為了集成你的 Web 應用程序需要的特定功能):
------ `RHEL/CentOS 7/6`------ # yum search all php ------ `Fedora` ------ # dnf search all php
這是我們將要安裝的軟件包。請記住MySQL連接器(PHP、Perl、Python、Java 等)將與MariaDB因為兩個系統都使用相同的客戶端協議,并且客戶端庫是二進制兼容的。
MariaDB/MySQL (php-mysql)– 一個動態共享對象,將為 PHP 添加 MariaDB 支持。PostgreSQL (php-pgsql)– PostgreSQL 數據庫支持 PHP。MongoDB (php-pecl-mongo)– 在 PHP 中與 MongoDB 數據庫通信的接口。Generic (php-pdo)– 一個動態共享對象,將為 PHP 添加一個數據庫訪問抽象層。Memcache (php-pecl-memcache)– Memcached 是一個緩存守護進程,專為動態 Web 應用程序設計,通過將對象存儲在內存中來減少數據庫負載。Memcached (php-pecl-memcached)– 使用 libmemcached 庫提供 API 以與 memcached 服務器通信的擴展。GD (php-gd)– 一個動態共享對象,為 PHP 添加了對使用 gd 圖形庫的支持。XML (php-xml)– 一個動態共享對象,增加了對 PHP 操作 XML 文檔的支持。MBString (php-mbstring)– 在 PHP 應用程序中處理多字節字符串的擴展。MCrypt (php-mcrypt)– 用于 PHP 腳本的 Mcrypt 庫。APC (php-pecl-apcu)– 用于優化和緩存 PHP 代碼的 APC 模塊。CLI (php-cli)– PHP 的命令行界面。PEAR (php-pear)– PHP 應用程序存儲庫框架。
使用以下命令安裝以下必要的 PHP 模塊。
------ `On RHEL/CentOS 7/6` ------ # yum --enablerepo=remi install php-mysqlnd php-pgsql php-pecl-mongo php-pdo php-pecl-memcache php-pecl-memcached php-gd php-xml php-mbstring php-mcrypt php-pecl-apcu php-cli php-pear ------ `On Fedora` ------ # dnf --enablerepo=remi install php-mysqlnd php-pgsql php-pecl-mongo php-pdo php-pecl-memcache php-pecl-memcached php-gd php-xml php-mbstring php-mcrypt php-pecl-apcu php-cli php-pear
第 4 步:安裝 MySQL 或 MariaDB 數據庫
安裝 MySQL 8 數據庫服務器
MySQL是世界上最流行的開源關系數據庫管理系統 (RDBMS) 之一,它通過提供對多個數據庫的多用戶訪問來運行任何服務器。MySQL 與 Apache 一起運行。安裝最新的MySQL 8.0版本,我們將安裝并啟用官方MySQL Yum使用以下命令的軟件存儲庫。
# rpm -Uvh https://repo.mysql.com/mysql80-community-release-el7-noarch.rpm [`On RHEL/CentOS 7`] # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el6-noarch.rpm [`On RHEL/CentOS 6`] # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc29-noarch.rpm [`On Fedora 29`] # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc28-noarch.rpm [`On Fedora 29`] # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc27-noarch.rpm [`On Fedora 29`] # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc26-noarch.rpm [`On Fedora 29`] # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc25-noarch.rpm [`On Fedora 29`] # rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc24-noarch.rpm [`On Fedora 29`]
安裝后MySQL Yum適用于你的 Linux 平臺的軟件存儲庫,現在安裝最新版本的MySQL(目前8.0) 使用以下命令。
# yum install mysql-community-server [`On RHEL/CentOS`] # dnf install mysql-community-server [`On Fedora`]
成功安裝 MySQL 后,就可以使用以下命令啟動 MySQL 服務器了。
# service mysqld start
查看我們關于如何保護 MySQL 8 數據庫安裝的文章。
安裝 MariaDB 10 數據庫服務器
MariaDB是著名的 MySQL 的一個分支,它是世界上最受歡迎的關系數據庫管理系統 (RDBMS) 之一。它完全由社區開發,因此它旨在保持 FOSS 并與 GPL 兼容。如果你是或曾經是 MySQL 用戶,遷移到 MariaDB 將是一個非常簡單的過程:用于連接、備份和恢復以及管理數據庫的流行命令在兩個 RDBMS 中是相同的。
在最新RHEL/CentOS 7發行版,MariaDB 是 MySQL 的直接替代品,在RHEL/CentOS 6MySQL 保持不變,你不得在其上安裝 MariaDBRHEL/CentOS 6來自默認存儲庫,但你可以使用官方 MariaDB 存儲庫安裝 MariaDB。
啟用 MariaDB 存儲庫 RHEL/CentOS 7發行版,創建一個名為cat /etc/yum.repos.d/mariadb.repo [mariadb] name = MariaDB baseurl = http://yum.mariadb.org/1/centos7-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1
Note:正如我上面所說,你也可以在上安裝 MariaDBRHEL/CentOS 6使用如上所述的官方 MariaDB 存儲庫。
啟用 MariaDB 存儲庫后,請執行以下操作:
------ `On RHEL/CentOS 7` ------ # yum --enablerepo=remi install httpd MariaDB-client MariaDB-server ------ `On Fedora` ------ # dnf --enablerepo=remi install httpd MariaDB-client MariaDB-server
第 5 步:啟用/啟動 Apache 和 MySQL/MariaDB
在 SystemD 上
------ `Enable Apache and MariaDB on Boot` ------ # systemctl enable httpd # systemctl enable mariadb ------ `Start Apache and MariaDB` ------ # systemctl start httpd # systemctl start mariadb
在 SysVinit 上
------ `Enable Apache and MySQL on Boot` ------ # chkconfig --levels 235 httpd on # chkconfig --levels 235 mysqld on ------ `Start Apache and MySQL` ------ # /etc/init.d/httpd start # /etc/init.d/mysqld start
第 6 步:驗證 PHP 安裝
創建一個名為test.php下的文件/var/www/html并向其添加以下代碼行。
該phpinfo()函數顯示了有關當前 PHP 安裝的信息:phpinfo(); ?>
檢查 PHP 7 信息
現在將你的網絡瀏覽器指向
VSole
網絡安全專家