Ndinoda kugovera ruzivo rwangu rwekushandura Apache 2.4 kuPCRE2, sezvo kunyange PHP 7 yakatsigira PCRE2 raibhurari kwenguva yakareba, asi iyo yakavhurika sosi Apache Software Foundation haisati.
Ehe, ini ndave kumberi kwekuburitswa kweApache nePCRE2 rutsigiro, sezvo ndiri kushandisa masosi kubva kuApache git, iyo inotiudza kuti PCRE2 rutsigiro rwatove kuitika mukuburitswa kunotevera, asi kune avo vanotoda PCRE2 rutsigiro mukati. Apache 2.4, uye vasingade kumirira kuburitswa ndinogovera imwe yenzira.
Chinyorwa chinofungidzira kuti uri kuunganidza ese anodiwa software kubva kusource code, runyorwa rwesoftware uye shanduro panguva yekunyora:
PCRE2-10.33
Kubvumbi 1.7.0
APR-kushandisa 1.6.1
Apache httpd 2.4.41
Nhanho yekutanga: kuvaka uye unganidza PCRE2
Ngatisvetuke nguva yekudhawunirodha masosi kubva kune zviri pamutemo masosi sezvo izvi zviri pachena, saka wakaburitsa dura, enda kufolda ine PCRE2 masosi, uye mhanyisa unotevera kuraira kutsigira UTF:
./configure --prefix=/etc/webserver/pcre2-1033 --enable-pcre2-8 --enable-pcre2-16 --enable-pcre2-32 --enable-unicode
Rondedzera nzira yako mune prefix kana iwe usingade kushandisa yakajairwa nzvimbo yekuisa raibhurari:
--prefix=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ
Zvikasadaro, unounganidza pasina prefix.
Mirairo yasara inoratidza kuisirwa kwezvitsigiro zve8-bit, 16-bit uye 32-bit PCRE kodhi mabhuroko, mushanduro iyi gungano rakaitwa navo.
Uye zvechokwadi, isu tinonyora chinhu ichi tichishandisa sequential execution yemirairo:
make
make install
Kana zvese zvakanaka uye kuunganidzwa kwakaenda pasina zvikanganiso, enda kune rinotevera nhanho.
Nhanho yechipiri: batanidza PCRE2 raibhurari kune APR
Sezvo Apache inounganidza masosi ichishandisa APR, isu tinofanirwa kuisa raibhurari muAPR pachayo, zvikasadaro panogona kunge paine zvikanganiso pamusoro pezvisingazivikanwe mabasa muApache masosi, nekuti tichange tichishandisa PCRE2 mabasa matsva.
Ngatisiyei nguva yekudhawunirodha masosi kubva kune zviri pamutemo masosi sezvo izvi zviri pachena, saka iwe wakaburitsa dura ukaita iyo APR gadziriso:
./configure --prefix=/etc/webserver/apr-170
Nomuzvarirwo, iwe unoratidza nzira yako mune prefix kana iwe usingade kushandisa yakajairwa nzvimbo yekuisa raibhurari, kana iwe ukasataura:
--prefix=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ
Mushure mekupedza kugadzirisa, enda kune dhairekitori: /etc/webserver/srcsrv/apr-1.7.0/build
Kana: /your/path/to the library/build
Tsvaga iyo apr_rules.mk faira mune ino dhairekitori, uye wedzera mitsara kumagumo uko:
EXTRA_LIBS=-lrt -lcrypt -lpthread -ldl
Kubatanidza raibhurari:
-lpcre2-8 -L/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ pcre2/lib
Sevha uye enda kumudzi wedhairekitori yeAPR masosi: /yako/nzira/kuraibhurari.
Ngatinyorei APR yedu yakagadziridzwa:
make
make install
Kana zvese zvakanaka uye kuunganidzwa kwakaenda pasina zvikanganiso, enda kune rinotevera nhanho.
Nhanho yechitatu: kuvaka APR-util yeApache kubva kune zvinyorwa
Iwe wakadhawunirodha raibhurari iyi kubva kunobva, enda kumudzi dhairekitori isina kurongedzerwa archive ine APR-util, uye isa inotevera mirairo zvakateerana:
./configure --prefix=/etc/webserver/apr-util-161 --with-apr=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ apr
make
make install
Nomuzvarirwo, iwe unoratidza nzira yako mune prefix kana iwe usingade kushandisa yakajairwa nzvimbo yekuisa raibhurari, kana iwe ukasataura:
--prefix=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ
Isu tinobatanidzawo APR yedu pano:
--with-apr=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ apr
Nhanho yechina: dhawunirodha masosi kubva kuApache git kutsigira PCRE2
Zvakakosha: Isu tinodhawunirodha masosi kubva kune yazvino edition yegit.
Isu tinofanirwa kudhawunirodha maviri masosi akadai ap_regex.h uye util_pcre.c, zvinongedzo pazasi:
Zvino enda kune yako Apache httpd source directory uye uvake Apache nemirairo inotevera:
./configure --prefix=/etc/webserver/apache-2441 --with-apr=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ apr --with-apr-util=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ apr-util --with-pcre=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ pcre2/bin/pcre2-config
Nomuzvarirwo, iwe unoratidza nzira yako mune prefix kana iwe usingade kushandisa yakajairwa nzvimbo yekuisa raibhurari, kana iwe ukasataura:
--prefix=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Apache httpd
Iwe unogona zvakare kutsanangura yakawedzera mirairo yekuvaka Apache pakufunga kwako, ndinoreva mirairo yekugonesa kana kudzima mamodule nemaraibhurari.
Tevere tinoenda kune yedu Apache httpd source dhairekitori, ndine izvi:
/etc/webserver/srcsrv/httpd-2.4.41
Iwe unongoenda kune yako dhairekitori, tsiva mune dhairekitori:
/etc/webserver/srcsrv/httpd-2.4.41/include
Iyo faira ap_regex.h, yatakadhawunirodha kubva kuApache git.
Isu tinoenda zvakare kune dhairekitori:
/etc/webserver/srcsrv/httpd-2.4.41/server
Isu tinotsiva iyo faira util_pcre.c neiyo yatakadhawunirodha kubva kuApache git
Zvino chasara kuwedzera PCRE2 yekubatanidza muApache pachayo, unofanirwa kutsvaga iyo faira ap_config_auto.h, iri mudhairekitori:
/etc/webserver/srcsrv/httpd-2.4.41/include
Pakutanga kwefaira iri, isa mitsara inotevera:
/* Load PCRE2 */
#define HAVE_PCRE2 1
Zvakanaka, ikozvino tagadzirira iyo chaiyo nguva yekunyora Apache httpd nePCRE2 rutsigiro.
Ngatiendei kune yedu Apache httpd source dhairekitori uye tinyore izvi nekuita sequentially kuita mirairo:
make
make install
Zvino, kana zvese zvikafamba zvakanaka uye pasina zvikanganiso, ipapo unenge waunganidza uye wakanyora Apache httpd nePCRE2 rutsigiro, zvinoreva shanduko yakanaka mumaApache modules anoshandisa PCRE nguva dzose kutaura, imwe yeiyi Module rewrite.
Mukupedzisa, iyi nzira inoita kuti zvikwanise kushandisa PCRE2 isati yaburitswa zviri pamutemo kubva kuApache Software Foundation, ndinovimba kuti shanduro ine PCRE2 rutsigiro ichaburitswa munguva pfupi.
Uyewo, panguva yekuedzwa kweyero .htaccess, hapana zvikanganiso zvakaitika, kana pane ane zvikanganiso, nyora mumashoko.
PS
Ndakanga ndakavhiringidzika zvishoma nemamiriro ekushandisa shanduro mbiri dzakasiyana dzePCRE kune stack yangu, uye ndakasarudza kuigadzirisa.
Source: www.habr.com