I roto i tenei tuhinga, ka korerohia e matou te tukanga o te whakauru i te puranga LAMP ki runga i te tūmau e whakahaere ana i te punaha whakahaere CentOS Stream. Ka ako koe me pehea te whirihora i ia waahanga taahiraa-i-te-taahiraa me te manatoko i te mahi o te puranga kua whakauruhia. Mo nga kaiwhakamahi e mahi tahi ana me nga tohatoha Debian/Ubuntu, he rite tonu te mahi whakaurunga LAMP i roto tetahi atu o a maatau tuhinga.
Kei roto i te puranga LAMP he huinga rorohiko, tae atu ki te punaha whakahaere Linux, te tūmau tukutuku Apache, te punaha whakahaere pātengi raraunga MySQL, MariaDB ranei, me te reo tuhi PHP. Ka mahi tahi enei waahanga ki te hanga i tetahi papaa kaha me te ngawari mo te tuku tono tukutuku me nga paetukutuku.
Te whakarite mo te Tūmau
I mua i te tiimata o te whakaurunga, me mahi he raupapa whakaritenga.
Te huri ki te Superuser
Ko te mea tuatahi, me whiwhi koe i nga mana rangatira (pakiaka) na te mea ko te nuinga o nga whakahau e hiahiatia ana mo te tatūnga tūmau me whai whakaaetanga teitei. Whakauruhia te whakahau e whai ake nei hei huri ki te kaiwhakamahi pakiaka:
su -
Whakahou Pūnaha
I muri mai, ka tūtohu kia whakahouhia nga kohinga katoa kua whakauruhia ki nga putanga hou. Hei whakahōu, whakahaeretia te whakahau:
dnf update -y
Papatūahi Pātūahi
Hei whakarite i te haumarutanga o to tūmau, me whirihora e koe nga ture uru. Ko te CentOS Stream e whakamahi ana i te papangaahi ma te taunoa hei punaha whakahaere ture. Me whakarite kei te whakauruhia, kei te whakahaere hoki te paahi ahi:
systemctl status firewalld
Na, whakatuwheratia nga tauranga ka whakamahia e te puranga LAMP:
- HTTP (tauranga 80) mo te uru ki te paetukutuku;
- HTTPS (tauranga 443) mo te uru ki te paetukutuku haumaru;
- MySQL (tauranga 3306) mo te urunga raraunga (mehemea ka hiahiatia he hononga mamao).
Whakamahia nga whakahau e whai ake nei hei whakatuwhera i enei tauranga:
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --permanent --add-port=3306/tcp
Ano, taapirihia he ture mo te hononga SSH:
firewall-cmd --permanent --add-port=22/tcp
Whai muri i te taapiri i nga ture e tika ana, utaina ano nga tautuhinga pātūahi:
firewall-cmd --reload
Me mohio kei te mahi tika te paahi ahi. Whakahaerehia te whakahau e whai ake nei hei tiro i nga ture katoa:
firewall-cmd --list-all
Apache Tāuta
Hei tāuta Apache, whakamahia te kaiwhakahaere mōkihi DNF. Mena ka hiahia koe ki te putanga taketake o Apache, whakamahia te whakahau e whai ake nei:
dnf install httpd -y
I tua atu i te whakaurunga taketake o Apache, ka taea hoki e koe te taapiri i nga momo taputapu me nga waahanga hei whakawhānui i te mahi me te whakarei ake i te haumarutanga o te tūmau tukutuku. Ko te wetereo o tenei tono ko:
dnf install additional_packages –y
Hei whakauru i te ratonga me etahi atu kete, ka penei te ahua o te whakahau:
dnf install httpd additional_packages -y
Tirohia te tuhinga mana kia mohio koe ki nga taputapu me nga waahanga e waatea ana.
I muri i te whakauru i a Apache, tiimata ka taapirihia ki te tiimata:
systemctl start httpd
systemctl enable httpd
Tirohia te mana o te ratonga ma te whakamahi i te whakahau:
systemctl status httpd
I tenei wa, ka taea e koe te whakatuwhera i tetahi kaitirotiro paetukutuku ka uru ki te wahitau IP o te tūmau ki te pae wāhitau. Me kite koe i te wharangi powhiri a Apache, e tohu ana i te whakaurunga angitu:
Ma te taunoa, ko Apache kei runga i te CentOS kei roto i te /etc/httpd whaiaronga. Kei roto he maha nga raarangi me nga konae e whakamahia ana mo te whirihoranga me te whakahaere a te tūmau.
Ko nga konae paetukutuku, penei i te HTML, CSS, JavaScript, me whakanoho ki roto i te / var / www / html whaiaronga. Ko nga konae katoa kei roto i tenei raarangi ka uru atu ki te wahitau o to pae.
Tāutanga MySQL
I tenei waahanga, ka titiro tatou ki te tukanga o te whakauru me te whirihora i a MariaDB i runga i te tūmau CentOS Stream. Ko MariaDB he marau o MySQL e mau tonu ana te hototahi ki MySQL engari he pai ake te mahi, nga ahuatanga whakarei, me te hapori kaiwhakawhanake kaha. Hei whakauru i te taputapu, whakamahia te whakahau:
dnf install mariadb-server mariadb -y
Whai muri i te whakaurunga, tiimata te ratonga ka taea te tiimata ki te tiimata i te punaha:
systemctl start mariadb
systemctl enable mariadb
Hei whakarite kei te whakahaere tika te ratonga MariaDB, whakamahia te whakahau e whai ake nei:
systemctl status mariadb
Ka whakaratohia e MariaDB he tuhinga tautuhinga haumarutanga ka taea e koe te tango i nga tautuhinga taunoa kore haumaru me te tiaki i te papaarangi. Whakahaerehia:
sudo mysql_secure_installation
I te wa e mahia ana te tuhinga, ka akiakihia koe ki te mahi i etahi waahanga:
- Whakaritea he kupuhipa mo te kaiwhakamahi pakiaka (mehemea kaore ano kia tautuhia);
- Tangohia nga kaiwhakamahi kore ingoa;
- Whakaaetia te takiuru mamao hei pakiaka;
- Tango i te pātengi raraunga whakamātautau me te uru ki reira;
- Utaina ano nga ripanga mana hei hoatu huringa.
E taunaki ana kia whakautu tika (y) i nga wahanga katoa.
I muri i te whakaoti i te tatūnga haumarutanga tuatahi, ka taea e koe te hono atu ki a MariaDB. Ki te mahi i tenei, whakahaerehia te whakahau:
mysql -u root -p
Hei whakarite kia tika te mahi a MariaDB, ka tūtohu kia hangahia he papaa raraunga whakamatautau. Whakahaerehia nga whakahau e whai ake nei i roto i te papatohu 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;
Ka hangaia e enei whakahau he whakamatautauranga raraunga hou, he ripanga test_table, ka taapirihia he rekoata. Ka whakaatu i nga ihirangi o te ripanga hei manatoko:
Hei puta i te anga, whakamahia te whakahau:
exit
Tāuta PHP
I muri i te whakauru i a Apache me MySQL, ko te mahi e whai ake nei ko te whakauru me te whirihora i te PHP, he kawenga mo te tukatuka i nga wharangi paetukutuku hihiri. He rite ki a Apache, ka taea e koe te whakaurunga taketake o PHP me te taapiri i nga waahanga taapiri e tika ana. Mo te whakaurunga taketake, whakamahia te whakahau:
dnf install php
Heoi, i tenei ahua, he iti noa te whakauru i te taputapu. I te nuinga o nga wa, ka puta tonu te whakaurunga me etahi atu waahanga. Kia tāuta me etahi kōwae hira:
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
Tirohia te tuhinga mana mo te rarangi katoa o nga waahanga e waatea ana. Hei taki i nga waahanga kua whakauruhia, whakamahia te whakahau:
php -m
Hei taki i te putanga kua whakauruhia o PHP, whakamahia te whakahau:
php -v
Ko te kōnae whirihoranga PHP matua kei te /etc/php.ini. Whakatūwherahia tēnei kōnae ki tētahi ētita kupu:
vim /etc/php.ini
Whakaritehia nga huringa e tika ana, hei tauira, tautuhi i te rohe wa tika ma te whakamahi i te date.timezone arata'iraa me te whakatika i nga rahi o te kōnae tukuake ma te whakamahi i nga tohutohu upload_max_filesize me post_max_size. Mena kaore koe i mahi i mua me nga kaiwhakamahara kuputuhi papatohu, kua whakaritea e matou he tuhinga hei awhina i a koe ki te mohio ki nga tikanga o te mahi me te vim.
I muri i te whakauru i te taputapu me te whakarereke i te konae whirihoranga, whakaara ano i te ratonga Apache:
systemctl restart httpd
Hei tirotiro i te mahi, hangahia he tuhinga ngawari hei whakaatu korero mo te putanga PHP me nga tautuhinga o naianei. Waihangatia he kōnae info.php i roto i te whaiaronga pakiaka tūmau tukutuku / var / www / html me te ihirangi e whai ake nei:
<?php
phpinfo();
?>
Whakatuwheratia he kaitirotiro paetukutuku ka uru ki te URL o te tūmau ka whai i te ingoa konae tuhinga whakamatautau. Hei tauira:
http://your_server_ip/info.php
Mena kua tatū tika nga mea katoa, ka kite koe i nga korero taipitopito mo te putanga PHP, nga tautuhinga, nga waahanga tautoko, me etahi atu:
Opaniraa
Ko te whakauru i te puranga LAMP ki runga i te tūmau CentOS Stream he mahi nui mo te hanga i tetahi tūmau tukutuku pono. Ma te whai i nga tohutohu, kua ako koe me pehea te whirihora i a Apache, MySQL, me te PHP, e tika ana mo nga paetukutuku hihiri. Ka whakatuwherahia e tenei puranga he maha nga waahanga mo te whakawhanaketanga paetukutuku, me te ako me te arotautanga ka awhina koe ki te whakapai ake i te mahi me te pono o to tūmau.