Nan atik sa a, nou pral detaye pwosesis pou enstale pile LAMP sou yon sèvè kap kouri sistèm operasyon CentOS Stream la. Ou pral aprann kijan pou konfigirasyon chak eleman etap pa etap epi verifye fonksyonalite pil enstale a. Pou itilizatè k ap travay ak distribisyon Debian/Ubuntu, yo dekri yon pwosesis enstalasyon LAMP menm jan an yon lòt nan atik nou yo.
Pile LAMP a konsiste de yon seri lojisyèl, ki gen ladan sistèm operasyon Linux, sèvè wèb Apache, sistèm jesyon baz done MySQL oswa MariaDB, ak langaj script PHP. Eleman sa yo travay ansanm pou kreye yon platfòm pwisan ak fleksib pou deplwaye aplikasyon entènèt ak sit entènèt.
Preparasyon sèvè
Anvan ou kòmanse enstalasyon an, yo dwe pran yon seri etap preparasyon.
Chanje nan Superitilizatè a
Premye a tout, ou bezwen jwenn privilèj super-utilisateur (rasin), kòm pifò kòmandman ki nesesè pou konfigirasyon sèvè bezwen otorizasyon ki wo. Antre kòmandman sa a pou chanje nan itilizatè rasin lan:
su -
Sistèm Mizajou
Apre sa, li rekòmande pou mete ajou tout pakè enstale nan dènye vèsyon yo. Pou mete ajou, kouri lòd la:
dnf update -y
Firewall konte genyen
Pou asire sekirite sèvè w la, ou bezwen configured règ aksè. CentOS Stream itilize firewalld pa default kòm sistèm jesyon règ. Asire w ke firewalld enstale epi kouri:
systemctl status firewalld
Lè sa a, louvri pò yo ke pil LAMP yo pral itilize:
- HTTP (pò 80) pou aksè sit entènèt;
- HTTPS (pò 443) pou aksè an sekirite sou sit wèb;
- MySQL (pò 3306) pou aksè baz done (si koneksyon aleka obligatwa).
Sèvi ak kòmandman sa yo pou louvri pò sa yo:
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --permanent --add-port=3306/tcp
Epitou, ajoute yon règ pou koneksyon SSH:
firewall-cmd --permanent --add-port=22/tcp
Apre ou fin ajoute tout règ ki nesesè yo, rechaje anviwònman firewall yo:
firewall-cmd --reload
Asire w ke firewall la ap travay kòrèkteman. Kouri lòd sa a pou wè tout règ:
firewall-cmd --list-all
Apache enstalasyon
Pou enstale Apache, sèvi ak manadjè pake DNF. Si ou sèlman bezwen vèsyon debaz Apache, sèvi ak lòd sa a:
dnf install httpd -y
Anplis enstalasyon debaz Apache, ou ka ajoute tou divès kalite sèvis piblik ak modil pou pwolonje fonksyonalite ak amelyore sekirite sèvè entènèt la. Sentaks kòmand sa a se:
dnf install additional_packages –y
Pou enstale sèvis la ansanm ak pakè adisyonèl, lòd la sanble sa a:
dnf install httpd additional_packages -y
Gade nan la dokiman ofisyèl pou familyarize tèt ou ak sèvis piblik ak modil ki disponib yo.
Apre enstale Apache, kòmanse li epi ajoute li nan demaraj:
systemctl start httpd
systemctl enable httpd
Tcheke estati sèvis la lè l sèvi avèk kòmandman an:
systemctl status httpd
Nan etap sa a, ou ka louvri yon navigatè entènèt epi antre adrès IP sèvè a nan ba adrès la. Ou ta dwe wè paj la akeyi Apache, ki endike yon enstalasyon siksè:
Pa default, Apache sou CentOS sitiye nan /etc/httpd anyè. Anndan li genyen plizyè sous-répertoires Et fichiers ki te itilize pou sèvè configuration Et gestion.
Fichye sit entènèt, tankou HTML, CSS, JavaScript, yo ta dwe mete nan la / Var / www / html anyè. Tout dosye ki nan anyè sa a pral aksesib nan adrès sit ou a.
Enstalasyon MySQL
Nan seksyon sa a, nou pral gade pwosesis pou enstale ak konfigirasyon MariaDB sou yon sèvè CentOS Stream. MariaDB se yon fouchèt nan MySQL ki kenbe konpatibilite ak MySQL men ki ofri pèfòmans amelyore, karakteristik amelyore, ak yon kominote devlopè aktif. Pou enstale zouti a, sèvi ak kòmandman an:
dnf install mariadb-server mariadb -y
Apre enstalasyon, kòmanse sèvis la epi pèmèt li kòmanse sou bòt sistèm lan:
systemctl start mariadb
systemctl enable mariadb
Pou asire ke sèvis MariaDB ap kouri kòrèkteman, sèvi ak lòd sa a:
systemctl status mariadb
MariaDB bay yon script konfigirasyon sekirite ki pèmèt ou retire paramèt default ki pa an sekirite epi pwoteje baz done a. Kouri li:
sudo mysql_secure_installation
Pandan ekzekisyon script la, yo pral mande w pou w fè plizyè etap:
- Mete yon modpas pou itilizatè rasin lan (si se pa deja mete);
- Retire itilizatè anonim;
- Pa pèmèt koneksyon aleka kòm rasin;
- Retire baz done tès la ak aksè a li;
- Rechaje tab privilèj pou aplike chanjman yo.
Li rekòmande pou reponn afimativman (y) nan tout etap.
Apre w fin ranpli konfigirasyon sekirite inisyal la, ou ka konekte ak MariaDB. Pou fè sa, kouri lòd la:
mysql -u root -p
Pou asire ke MariaDB ap travay kòrèkteman, li rekòmande pou kreye yon baz done tès. Egzekite kòmandman sa yo nan konsole MariaDB:
CREATE DATABASE testdb;
USE testdb;
CREATE TABLE test_table (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL
);
INSERT INTO test_table (name) VALUES ('example data');
SELECT * FROM test_table;
Kòmandman sa yo pral kreye yon nouvo baz done testdb, yon tab test_table, epi ajoute yon dosye. Lè sa a, yo pral montre sa ki nan tablo a pou verifikasyon:
Pou sòti nan kokiy la, sèvi ak kòmandman an:
exit
Enstalasyon PHP
Apre enstale Apache ak MySQL, pwochen etap la se enstale ak konfigirasyon PHP, ki responsab pou trete paj wèb dinamik. Menm jan ak Apache, ou ka fè yon enstalasyon debaz PHP ak ajoute modil adisyonèl ki nesesè yo. Pou yon enstalasyon debaz, sèvi ak lòd la:
dnf install php
Sepandan, nan fòm sa a, zouti a raman enstale. Pi souvan, enstalasyon an rive imedyatman ak modil adisyonèl. Ann enstale ak kèk modil enpòtan:
dnf install php php-cli php-mysqlnd php-json php-gd php-ldap php-odbc php-pdo php-opcache php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap php-zip –y
Gade nan la dokiman ofisyèl pou yon lis konplè modil ki disponib. Pou tcheke modil yo enstale, sèvi ak lòd sa a:
php -m
Pou tcheke vèsyon an enstale nan PHP, sèvi ak lòd la:
php -v
Fichye konfigirasyon PHP prensipal la sitiye nan /etc/php.ini. Louvri fichye sa a nan yon editè tèks:
vim /etc/php.ini
Fè chanjman ki nesesè yo, pou egzanp, mete zòn ki kòrèk la lè l sèvi avèk dat.timezone direktiv la epi ajiste gwosè yo Upload dosye lè l sèvi avèk upload_max_filesize ak post_max_size direktiv yo. Si ou pa te travay deja ak editè tèks konsole, nou te prepare yon atik pou ede w konprann baz travay ak vim.
Apre enstale zouti a epi fè nenpòt chanjman nan fichye konfigirasyon an, rekòmanse sèvis Apache la:
systemctl restart httpd
Pou tcheke fonksyonalite a, kreye yon script senp ki pral montre enfòmasyon sou vèsyon PHP a ak paramèt aktyèl yo. Kreye yon fichye info.php nan anyè rasin sèvè entènèt la / Var / www / html ak kontni sa a:
<?php
phpinfo();
?>
Louvri yon navigatè entènèt epi antre URL sèvè a ki te swiv pa non dosye script tès la. Pou egzanp:
http://your_server_ip/info.php
Si tout bagay yo tabli kòrèkteman, ou pral wè enfòmasyon detaye sou vèsyon PHP, paramèt, modil sipòte, ak plis ankò:
konklizyon
Enstale pil LAMP sou yon sèvè CentOS Stream se yon etap enpòtan pou kreye yon sèvè entènèt serye. Lè w suiv enstriksyon yo, ou aprann kijan pou konfigirasyon Apache, MySQL, ak PHP, ki nesesè pou sit entènèt dinamik. Pile sa a ouvè anpil posiblite pou devlopman entènèt, ak plis etid ak optimize pral ede w amelyore pèfòmans ak fyab sèvè w la.