Wụnye Apache, MySQL 8 ma ọ bụ MariaDB 10 na PHP 7 na CentOS 7


Otu esi eduzi ntuziaka a na-akọwa otu esi etinye ụdị Apache kachasị ọhụrụ, MySQL 8 ma ọ bụ MariaDB 10 na PHP 7 yana modul PHP achọrọ na RHEL/CentOS 7/6 na Fedora 24-29.

Ngwakọta sistemụ arụmọrụ (Linux) yana sava weebụ (Apache), ihe nkesa nchekwa data (MariaDB/MySQL) na asụsụ scripting n'akụkụ nkesa (PHP) ka amara dị ka nchịkọta LAMP.

Kemgbe Septemba 2015, ndị otu PHP anaghị akwado PHP 5.4 wee rute na njedebe nke ndụ, ka, ụgbọ mmiri PHP 5.4 nwere RHEL/CentOS 7/6 nwere obere mgbanwe mgbanwe yana Red Hat na-akwado ya, yabụ na-ebuli elu ka ọ dị elu. mbipute achọghị. Agbanyeghị, a na-atụ aro ka ịkwalite PHP 5.4 gị gaa na PHP 5.5+ maka nchekwa na arụmọrụ ka ukwuu.

Nke a bụ ihe nkesa Linux gị ugbu a na-ebu:

Iji mee nke a, anyị ga-eme ka ebe nchekwa EPEL na Remi wee jiri ngwa njikwa ngwugwu dị na Fedora).

Kwụpụ 1: Ịwụnye EPEL na Remi Repository

EPEL (Ngwugwu Mgbakwunye maka Linux Enterprise) bụ ebe nchekwa obodo na-enye ngwugwu ngwanrọ mgbakwunye maka nkesa Linux dabere na RHEL.

Remi bụ ebe nchekwa ebe ị nwere ike ịchọta ụdị ọhụrụ nke nchịkọta PHP (nke zuru ezu) maka ntinye na nkesa Fedora na Enterprise Linux.

# yum update && yum install epel-release
# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

------ For RHEL 7 Only ------
# subscription-manager repos --enable=rhel-7-server-optional-rpms
# yum update && yum install epel-release
# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

------ For RHEL 6 Only ------
# subscription-manager repos --enable=rhel-6-server-optional-rpms
# rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-29.rpm  [On Fedora 29]
# rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-28.rpm  [On Fedora 28]
# rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-27.rpm  [On Fedora 27]
# rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-26.rpm  [On Fedora 26]
# rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-25.rpm  [On Fedora 25]
# rpm -Uvh http://rpms.remirepo.net/fedora/remi-release-24.rpm  [On Fedora 24]

Nzọụkwụ 2: Ịwụnye Apache Web Server

Apache bụ sava weebụ HTTP efu yana mepere emepe nke na-arụ n'ọtụtụ sistemụ arụmọrụ UNIX yana Windows. Dị ka nke a, enwere ike iji ya jee ozi ibe weebụ kwụ ọtọ ma jikwaa ọdịnaya siri ike. Akụkọ ndị na-adịbeghị anya na-egosi na Apache bụ sava mbụ a na-eji na webụsaịtị na kọmputa chere ihu n'Internet.

Iji wụnye sava weebụ Apache, buru ụzọ melite ngwungwu ngwanrọ sistemụ wee wụnye ya site na iji iwu ndị a.

# yum -y update
# yum install httpd

Ozugbo arụnyere sava weebụ Apache, ị nwere ike ibido mee ya ka ọ malite na akpaghị aka na buut sistemụ.

# systemctl start httpd
# systemctl enable httpd
# systemctl status httpd

Ọ bụrụ na ị na-agba ọsọ firewalld, jide n'aka na ị na-ahapụ okporo ụzọ Apache na firewall.

# firewall-cmd --zone=public --permanent --add-service=http
# firewall-cmd --zone=public --permanent --add-service=https
# firewall-cmd --reload

Kwụpụ 3: Wụnye PHP Iji Remi Repository

PHP (Hypertext Preprocessor) bụ asụsụ scripting n'akụkụ ihe nkesa na-emepe emepe nke dabara adaba maka mmepe weebụ. Enwere ike iji ya wepụta ibe weebụ dị ike maka weebụsaịtị yana a na-ahụkarị ya na * sava nix. Otu n'ime uru PHP bụ na ọ na-adị mfe extensible site n'iji ụdị modul dị iche iche.

Iji wụnye PHP, ị ga-ebu ụzọ mee ka ebe nchekwa Remi rụọ ọrụ site na ịwụnye yum-utils, nchịkọta mmemme bara uru maka ijikwa ebe nchekwa yum na ngwugwu.

# yum install yum-utils

Ozugbo arụnyere, ị nwere ike iji yum-config-manager nke yum-utils nyere iji mee ka ebe nchekwa Remi dị ka ebe nchekwa ndabere maka ịwụnye ụdị PHP dị iche iche dịka egosiri.

Dịka ọmụmaatụ, iji wụnye ụdị PHP 7.x, jiri iwu na-esonụ.

------------- On CentOS & RHEL ------------- 
# yum-config-manager --enable remi-php70 && yum install php       [Install PHP 7.0]
# yum-config-manager --enable remi-php71 && yum install php       [Install PHP 7.1]
# yum-config-manager --enable remi-php72 && yum install php       [Install PHP 7.2]
# yum-config-manager --enable remi-php73 && yum install php       [Install PHP 7.3]

------------- On Fedora ------------- 
# dnf --enablerepo=remi install php70      [Install PHP 7.0]
# dnf --enablerepo=remi install php71      [Install PHP 7.1]
# dnf --enablerepo=remi install php72      [Install PHP 7.2]
# dnf --enablerepo=remi install php73      [Install PHP 7.3]

Ọzọ, anyị ga-etinye modul PHP ndị a niile n'isiokwu a. Ị nwere ike ịchọ modul metụtara PHP ndị ọzọ (ikekwe iji jikọta otu ọrụ nke ngwa weebụ gị chọrọ) na iwu a:

------ RHEL/CentOS 7/6------
# yum search all php     

------ Fedora ------
# dnf search all php   

N'agbanyeghị nkesa, iwu ndị dị n'elu weghachi ndepụta ngwugwu na ebe nchekwa enyere ugbu a gụnyere okwu php na aha ngwugwu na/ma ọ bụ nkọwa.

Nke a bụ ngwugwu ndị anyị ga-etinye. Biko buru n'uche na njikọ MySQL (PHP, Perl, Python, Java, wdg) ga-arụ ọrụ na-agbanweghị agbanwe na MariaDB n'ihi na sistemụ abụọ ahụ na-eji otu ụkpụrụ ndị ahịa na ọba akwụkwọ ndị ahịa na-adakọ ọnụ.

  1. MariaDB/MySQL (php-mysql) - ihe na-ekekọrịta ike nke ga-agbakwunye nkwado MariaDB na PHP.
  2. PostgreSQL (php-pgsql) - Nkwado nchekwa data PostgreSQL maka PHP.
  3. MongoDB (php-pecl-mongo) – Ngwa maka iji nchekwa data MongoDB na PHP na-ekwurịta okwu.
  4. Generic (php-pdo) - Ihe kekọrịtara ike nke ga-agbakwunye nchekwa data abstraction oyi akwa na PHP.
  5. Memcache (php-pecl-memcache) - Memcached bụ caching daemon emebere karịsịa maka ngwa webụ dị ike iji belata ibu nchekwa data site na ịchekwa ihe na ebe nchekwa.
  6. Memcached (php-pecl-memcached) – Mgbakwunye na-eji ọba akwụkwọ libmemcached nye API maka iji sava memcached na-ekwurịta okwu.
  7. GD (php-gd) – Ihe ikesa ike na-agbakwunye nkwado maka iji ọba akwụkwọ eserese gd na PHP.
  8. XML (php-xml) – Ihe na-ekekọrịta ike na-agbakwunye nkwado na PHP maka ijikwa akwụkwọ XML.
  9. MBString (php-mbstring) – ndọtị iji jikwaa eriri multi-byte na ngwa PHP.
  10. MCrypt (php-mcrypt) – Ọbá akwụkwọ Mcrypt maka script PHP.
  11. APC (php-pecl-apcu) – APC modul eji ebuli na cache koodu PHP.
  12. CLI (php-cli) – iwu-ahịrị interface maka PHP.
  13. PEAR (php-pear) - Usoro nchekwa ngwa maka PHP.

Wụnye modul PHP ndị a dị mkpa na iwu dị n'okpuru.

------ 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

Kwụpụ 4: Ịwụnye MySQL ma ọ bụ MariaDB database

Na ngalaba a, anyị ga-egosi gị ntinye nke ma data data MySQL na MariaDB, yabụ ọ dịịrị gị ihe ị ga-ahọrọ dabere na ihe ị chọrọ.

MySQL bụ otu n'ime usoro njikwa nchekwa data mmekọrịta nke mepere emepe (RDBMS) kachasị ewu ewu n'ụwa nke na-agba nkesa ọ bụla site na ịnye ọtụtụ ndị ọrụ ohere ịnweta ọtụtụ ọdụ data. MySQL na-arụ ọrụ na Apache.

Iji wụnye ụdị MySQL 8.0 ọhụrụ, anyị ga-arụnye ma mee ka ebe nchekwa ngwanrọ MySQL Yum rụọ ọrụ site na iji iwu ndị a.

# rpm -Uvh https://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm        [On RHEL/CentOS 7]
# rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el6-1.noarch.rpm     [On RHEL/CentOS 6]
# rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc29-1.noarch.rpm    [On Fedora 29]
# rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc28-1.noarch.rpm    [On Fedora 29]
# rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc27-1.noarch.rpm    [On Fedora 29]
# rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc26-1.noarch.rpm    [On Fedora 29]
# rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc25-1.noarch.rpm    [On Fedora 29]
# rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-fc24-1.noarch.rpm    [On Fedora 29]

Mgbe ị wụnyesịrị ebe nchekwa ngwanrọ MySQL Yum maka ikpo okwu Linux gị, ugbu a wụnye ụdị MySQL ọhụrụ (nke ugbu a 8.0) site na iji iwu na-esonụ.

# yum install mysql-community-server      [On RHEL/CentOS]
# dnf install mysql-community-server      [On Fedora]

Mgbe emechara nke ọma nke MySQL, ọ bụ oge iji iwu na-esonụ malite ihe nkesa MySQL.

# service mysqld start

Lelee akụkọ anyị maka otu esi echekwa nchekwa data MySQL 8.

MariaDB bụ ndụdụ nke MySQL a ma ama, otu n'ime Sistemụ Njikwa Database Management System (RDBMS) kacha ewu ewu n'ụwa. Ndị obodo mepere ya kpamkpam ma dịka nke a e bu n'obi ka ọ nọgide na FOSS yana dakọtara na GPL.

Ọ bụrụ na ị bụ ma ọ bụ bụrụ, onye ọrụ MySQL, ịkwaga na MariaDB ga-abụ usoro kwụ ọtọ: iwu ndị a ma ama iji jikọọ na, ndabere na weghachite, na jikwaa ọdụ data dị na RDBMS abụọ ahụ.

Na nkesa RHEL/CentOS 7 kachasị ọhụrụ, MariaDB bụ ngbanwe nke MySQL na na RHEL/CentOS 6 MySQL ka dị otu ma a naghị ekwe ka ịwụnye MariaDB na RHEL/CentOS 6 site na ebe nchekwa ndabere, mana ị nwere ike tinye MariaDB site na iji. ebe nchekwa MariaDB gọọmentị.

Iji mee ka ebe nchekwa MariaDB dị na nkesa RHEL/CentOS 7, mepụta faịlụ akpọrọ /etc/yum.repos.d/mariadb.repo nwere ọdịnaya ndị a:

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Mara: Dịka m kwuru n'elu, ị nwekwara ike ịwụnye MariaDB na RHEL/CentOS 6 site na iji ebe nchekwa MariaDB gọọmentị dị ka ekwuru n'elu.

Mgbe ịmechara ebe nchekwa MariaDB, mee:

------ On RHEL/CentOS 7 ------
# yum --enablerepo=remi install httpd MariaDB-client MariaDB-server

------ On Fedora ------
# dnf --enablerepo=remi install httpd MariaDB-client MariaDB-server

Kwụpụ 5: Kwado/Malite Apache na MySQL/MariaDB

------ Enable Apache and MariaDB on Boot ------
# systemctl enable httpd
# systemctl enable mariadb

------ Start Apache and MariaDB ------
# systemctl start httpd
# systemctl start mariadb
------ 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

Kwụpụ 6: Nyochaa nwụnye PHP

Ka anyị rapara n'ụzọ kpochapụrụ nke PHP. Mepụta faịlụ akpọrọ test.php n'okpuru /var/www/html wee tinye ahịrị koodu ndị a na ya.

Ọrụ phpinfo() na-egosi ọtụtụ ozi gbasara nrụnye PHP dị ugbu a:

<?php
	phpinfo();
?>

Ugbu a rụtụ aka ihe nchọgharị weebụ gị na http://[server]/test.php wee lelee ọnụnọ nke modul arụnyere na ngwanrọ agbakwunyere site na ịpịgharịa ibe ahụ (dochie [sava] koodu> na ngalaba gị ma ọ bụ adreesị IP nke ihe nkesa gị). Mmepụta gị kwesịrị ịdị ka:

Ekele! Ị nwere nrụnye kacha ọhụrụ nke ngwugwu LAMP. Ọ bụrụ na ihe na-agaghị dị ka a tụrụ anya, nweere onwe gị ịkpọtụrụ anyị site na iji ụdị dị n'okpuru. A na-anabatakwa ajụjụ na aro.

Mara: ị nwekwara ike ịwụnye MariaDB na nkesa ndị ọzọ site na ịmepụta ebe nchekwa omenala na-eso ntuziaka enyere ebe a.