Ndingathanda ukwabelana ngamava am okuguqulela i-Apache 2.4 ukuya kwi-PCRE2, kuba i-PHP 7 ixhase ilayibrari ye-PCRE2 ixesha elide, kodwa umthombo ovulekileyo we-Apache Software Foundation awukakwenzi.
Ewe, ngoku ndiphambi kokukhululwa kwe-Apache ngenkxaso ye-PCRE2, kuba ndisebenzisa imithombo evela kwi-Apache git, esixelela ukuba inkxaso ye-PCRE2 sele inokwenzeka kukhupho olulandelayo, kodwa kwabo sele befuna inkxaso ye-PCRE2 I-Apache 2.4, kwaye ngubani ongafuni ukulinda ukukhululwa ndabelana ngenye yeendlela.
Inqaku lithatha ukuba uqokelela yonke isoftware eyimfuneko kwikhowudi yomthombo, uluhlu lwesoftware kunye neenguqulelo ngexesha lokubhala:
PCRE2-10.33
Epreli 1.7.0
APR-ukusetyenziswa 1.6.1
Apache httpd 2.4.41
Inyathelo lokuqala: yakha kwaye uqokelele iPCRE2
Masishiye umzuzu wokukhuphela imithombo evela kwimithombo esemthethweni kuba oku kucace kakhulu, ke ngoko ukhuphe i-archive, yiya kwifolda enemithombo yePCRE2, kwaye usebenzise lo myalelo ulandelayo ukuxhasa i-UTF:
./configure --prefix=/etc/webserver/pcre2-1033 --enable-pcre2-8 --enable-pcre2-16 --enable-pcre2-32 --enable-unicode
Chaza umendo wakho kwisimaphambili ukuba awufuni ukusebenzisa indawo eqhelekileyo ukuhlohla ithala leencwadi:
--prefix=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ
Ngaphandle koko, uqokelela ngaphandle kwesimaphambili.
Imiyalelo eseleyo ibonisa ukubandakanywa kwezixhaso ze-8-bit, i-16-bit kunye ne-32-bit ye-PCRE iibhloko zekhowudi, kule nguqulo indibano yenziwa kunye nabo.
Kwaye kunjalo, siqulunqa le nto sisebenzisa ulandelelwano lwemiyalelo:
make
make install
Ukuba yonke into ilungile kwaye ukuhlanganiswa kuhambe ngaphandle kweempazamo, dlulela kwinyathelo elilandelayo.
Inyathelo lesibini: qhagamshela ithala leencwadi lePCRE2 kwi-APR
Ekubeni i-Apache iqulunqa imithombo isebenzisa i-APR, kufuneka sibandakanye ilayibrari kwi-APR ngokwayo, ngaphandle koko kunokubakho iimpazamo malunga nemisebenzi engaziwayo kwimithombo ye-Apache, kuba siya kusebenzisa imisebenzi emitsha ye-PCRE2.
Masishiye umzuzu wokukhuphela imithombo evela kwimithombo esemthethweni kuba oku kucace kakhulu, ke ngoko ukhuphe ugcino kwaye wenza uqwalaselo lwe-APR:
./configure --prefix=/etc/webserver/apr-170
Ngokwendalo, ubonisa umendo wakho kwisimaphambili ukuba awufuni ukusebenzisa indawo eqhelekileyo yokuhlohla ithala leencwadi, okanye ukuba awukhankanyi:
--prefix=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ
Emva kokugqiba uqwalaselo, yiya kuluhlu: /etc/webserver/srcsrv/apr-1.7.0/build
Okanye: /yakho/indlela/iya kwithala leencwadi/yakha
Fumana ifayile apr_rules.mk kolu lawulo, kwaye wongeze imigca ekupheleni apho:
EXTRA_LIBS=-lrt -lcrypt -lpthread -ldl
Ukuqhagamshela ithala leencwadi:
-lpcre2-8 -L/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ pcre2/lib
Gcina kwaye uye kulawulo lweengcambu zemithombo ye-APR: /yakho/indlela/kwithala leencwadi.
Masiqulunqe i-APR yethu elungisiweyo:
make
make install
Ukuba yonke into ilungile kwaye ukuhlanganiswa kuhambe ngaphandle kweempazamo, dlulela kwinyathelo elilandelayo.
Inyathelo lesithathu: yakha i-APR-util ye-Apache evela kwimithombo
Ukhuphele eli thala leencwadi kumthombo, yiya kwingcambu yogcino lwefayile olungapakishwanga nge APR-usetyenziso, kwaye ngenisa le miyalelo ilandelayo ngokulandelelanayo:
./configure --prefix=/etc/webserver/apr-util-161 --with-apr=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ apr
make
make install
Ngokwendalo, ubonisa umendo wakho kwisimaphambili ukuba awufuni ukusebenzisa indawo eqhelekileyo yokuhlohla ithala leencwadi, okanye ukuba awukhankanyi:
--prefix=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ
Sikwadibanisa i-APR yethu apha:
--with-apr=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ apr
Inyathelo lesine: Khuphela imithombo evela kwi-Apache git ukuxhasa i-PCRE2
Kubalulekile: Sikhuphela imithombo kuhlelo lwamva nje lwegit.
Kufuneka sikhuphele imithombo emibini efana ne-ap_regex.h kunye ne-util_pcre.c, amakhonkco angezantsi:
Ngoku yiya kumthombo wakho weApache httpd kwaye wakhe iApache ngale miyalelo ilandelayo:
./configure --prefix=/etc/webserver/apache-2441 --with-apr=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ apr --with-apr-util=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ apr-util --with-pcre=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ pcre2/bin/pcre2-config
Ngokwendalo, ubonisa umendo wakho kwisimaphambili ukuba awufuni ukusebenzisa indawo eqhelekileyo yokuhlohla ithala leencwadi, okanye ukuba awukhankanyi:
--prefix=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Apache httpd
Ungakhankanya imiyalelo eyongezelelweyo yokwakha iApache ngokwengqiqo yakho, ndithetha imiyalelo yokwenza okanye ukukhubaza iimodyuli kunye namathala eencwadi.
Okulandelayo siya kwi-Apache httpd yethu yomthombo weefayili, ndinale nto:
/etc/webserver/srcsrv/httpd-2.4.41
Ngokwendalo uya kulawulo lwakho, buyisela kuluhlu:
/etc/webserver/srcsrv/httpd-2.4.41/include
Ifayile ap_regex.h, esiyikhuphele kwi-Apache git.
Kwakhona siya kuluhlu:
/etc/webserver/srcsrv/httpd-2.4.41/server
Sibuyisela ifayile util_pcre.c kunye nale siyikhuphele kwi-Apache git
Ngoku ekuphela kwento eseleyo kukongeza uqhagamshelo lwePCRE2 kwiApache ngokwayo, kufuneka ufumane ifayile ap_config_auto.h, ibekwe kulawulo:
/etc/webserver/srcsrv/httpd-2.4.41/include
Ekuqaleni kwale fayile, faka le migca ilandelayo:
/* Load PCRE2 */
#define HAVE_PCRE2 1
Ewe, ngoku silungele umzuzu wokwenyani wokuqulunqa i-Apache httpd ngenkxaso ye-PCRE2.
Makhe siye kwi-Apache yethu yemvelaphi ye-httpd kwaye sihlanganise oku ngokwenza ngokulandelelana imiyalelo:
make
make install
Ngoku, ukuba yonke into ihambe kakuhle kwaye ngaphandle kweempazamo, ngoko uya kube uqokelele kwaye uqokelele i-Apache httpd ngenkxaso ye-PCRE2, oku kuthetha ukuba utshintsho oluhle kwiimodyuli ze-Apache ezisebenzisa i-PCRE iintetho eziqhelekileyo, enye yezi yiModyuli bhala kwakhona.
Ekugqibeleni, le ndlela yenza kube lula ukusebenzisa i-PCRE2 ngaphambi kokukhululwa ngokusemthethweni kwi-Apache Software Foundation, ndiyathemba ukuba inguqu ene-PCRE2 inkxaso iya kukhutshwa kungekudala.
Kwakhona, ngexesha lokuvavanya umgangatho .htaccess, akukho mpazamo eyenzekayo, ukuba nabani na uneziphoso, bhala kwizimvo.
PS
Ndabhideka kancinane yimeko yokusebenzisa iinguqulelo ezimbini ezahlukeneyo ze-PCRE kwi-stack yam, kwaye ndagqiba ekubeni ndiyilungise.
umthombo: www.habr.com