Kuv xav qhia kuv qhov kev paub ntawm kev txhais Apache 2.4 rau PCRE2, txij li txawm tias PHP 7 tau txhawb nqa PCRE2 lub tsev qiv ntawv tau ntev, tab sis qhov qhib Apache Software Foundation tseem tsis tau.
Tau kawg, kuv tam sim no tej zaum ua ntej ntawm Apache tso tawm nrog PCRE2 kev txhawb nqa, txij li kuv tab tom siv cov peev txheej los ntawm Apache git, uas qhia peb tias kev txhawb nqa PCRE2 twb tau ua tiav hauv kev tso tawm tom ntej, tab sis rau cov neeg uas twb xav tau kev txhawb nqa PCRE2 hauv Apache 2.4, thiab leej twg tsis xav tos tso kuv qhia ib txoj hauv kev.
Kab lus xav tias koj tab tom sau tag nrho cov software tsim nyog los ntawm qhov chaws, ib daim ntawv teev cov software thiab versions thaum lub sijhawm sau ntawv:
PCRE2-10.33
Peb Hlis 1.7.0
APR-util 1.6.1
Apache httpd 2.4.41
Kauj ruam 2: tsim thiab sau PCREXNUMX
Cia peb hla lub sijhawm rub tawm cov peev txheej los ntawm cov ntaub ntawv nom tswv vim qhov no pom tseeb dhau lawm, yog li koj tau nthuav tawm cov ntaub ntawv khaws tseg, mus rau lub nplaub tshev nrog PCRE2 qhov chaw, thiab khiav cov lus txib hauv qab no los txhawb UTF:
./configure --prefix=/etc/webserver/pcre2-1033 --enable-pcre2-8 --enable-pcre2-16 --enable-pcre2-32 --enable-unicode
Qhia koj txoj hauv kev ua ntej yog tias koj tsis xav siv tus qauv qhov chaw los teeb tsa lub tsev qiv ntawv:
--prefix=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ
Txwv tsis pub, koj sau tsis muaj prefix.
Cov lus txib ntxiv qhia txog kev suav nrog kev txhawb nqa rau 8-ntsis, 16-ntsis thiab 32-ntsis PCRE code blocks, hauv qhov version no lub rooj sib txoos tau ua nrog lawv.
Thiab tau kawg, peb suav cov khoom no siv kev ua tiav ntawm cov lus txib:
make
make install
Yog tias txhua yam zoo thiab muab tso ua ke mus yam tsis muaj qhov yuam kev, txav mus rau kauj ruam tom ntej.
Kauj Ruam 2: Txuas lub tsev qiv ntawv PCREXNUMX rau APR
Txij li Apache suav sau cov peev txheej siv APR, peb yuav tsum suav nrog lub tsev qiv ntawv hauv APR nws tus kheej, txwv tsis pub yuav muaj qhov yuam kev txog kev ua haujlwm tsis paub hauv Apache qhov chaw, vim tias peb yuav siv cov haujlwm tshiab PCRE2.
Cia peb tshem tawm lub sijhawm rub tawm los ntawm cov chaw ua haujlwm vim qhov no pom tseeb dhau lawm, yog li koj tau ntim cov ntaub ntawv thiab ua tiav APR teeb tsa:
./configure --prefix=/etc/webserver/apr-170
Lawm, koj qhia koj txoj hauv kev ua ntej yog tias koj tsis xav siv tus qauv qhov chaw rau kev txhim kho lub tsev qiv ntawv, lossis yog tias koj tsis qhia meej:
--prefix=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ
Tom qab ua tiav qhov kev teeb tsa, mus rau cov npe: /etc/webserver/srcsrv/apr-1.7.0/build
Los yog: /your/path/to the library/build
Nrhiav apr_rules.mk cov ntaub ntawv hauv phau ntawv no, thiab ntxiv cov kab ntawm qhov kawg qhov twg:
EXTRA_LIBS=-lrt -lcrypt -lpthread -ldl
Txuas lub tsev qiv ntawv:
-lpcre2-8 -L/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ pcre2/lib
Txuag thiab mus rau hauv lub hauv paus directory ntawm APR qhov chaw: / koj / txoj kev / mus rau lub tsev qiv ntawv.
Cia peb suav peb qhov hloov kho APR:
make
make install
Yog tias txhua yam zoo thiab muab tso ua ke mus yam tsis muaj qhov yuam kev, txav mus rau kauj ruam tom ntej.
Kauj ruam XNUMX: tsim APR-util rau Apache los ntawm qhov chaw
Koj tau rub tawm lub tsev qiv ntawv no los ntawm qhov chaw, mus rau hauv lub hauv paus nplaub tshev ntawm cov ntaub ntawv tsis tau ntim nrog APR-util, thiab nkag mus rau cov lus txib nram qab no ua ntu zus:
./configure --prefix=/etc/webserver/apr-util-161 --with-apr=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ apr
make
make install
Lawm, koj qhia koj txoj hauv kev ua ntej yog tias koj tsis xav siv tus qauv qhov chaw rau kev txhim kho lub tsev qiv ntawv, lossis yog tias koj tsis qhia meej:
--prefix=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ
Peb kuj txuas peb APR ntawm no:
--with-apr=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ apr
Kauj ruam plaub: download tau qhov chaw ntawm Apache git los txhawb PCRE2
Ib qho tseem ceeb: Peb rub tawm cov peev txheej los ntawm cov ntawv tshaj tawm tshiab ntawm git.
Peb yuav tsum rub tawm ob qhov chaw xws li ap_regex.h thiab util_pcre.c, txuas hauv qab no:
Tam sim no mus rau koj Apache httpd qhov chaw directory thiab tsim Apache nrog cov lus txib hauv qab no:
./configure --prefix=/etc/webserver/apache-2441 --with-apr=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ apr --with-apr-util=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ apr-util --with-pcre=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ pcre2/bin/pcre2-config
Lawm, koj qhia koj txoj hauv kev ua ntej yog tias koj tsis xav siv tus qauv qhov chaw rau kev txhim kho lub tsev qiv ntawv, lossis yog tias koj tsis qhia meej:
--prefix=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Apache httpd
Koj tuaj yeem hais qhia cov lus txib ntxiv rau kev tsim Apache ntawm koj qhov kev txiav txim siab, Kuv txhais tau tias cov lus txib rau kev ua haujlwm lossis tsis siv cov modules thiab cov tsev qiv ntawv.
Tom ntej no peb mus rau peb Apache httpd qhov chaw directory, kuv muaj qhov no:
/etc/webserver/srcsrv/httpd-2.4.41
Koj ib txwm mus rau koj phau ntawv qhia, hloov hauv phau ntawv qhia:
/etc/webserver/srcsrv/httpd-2.4.41/include
Cov ntaub ntawv ap_regex.h, uas peb rub tawm los ntawm Apache git.
Peb kuj mus rau lub directory:
/etc/webserver/srcsrv/httpd-2.4.41/server
Peb hloov cov ntaub ntawv util_pcre.c nrog rau qhov peb rub tawm los ntawm Apache git
Tam sim no txhua yam uas tseem tshuav yog ntxiv qhov kev sib txuas PCRE2 hauv Apache nws tus kheej, koj yuav tsum nrhiav cov ntaub ntawv ap_config_auto.h, nws nyob hauv cov npe:
/etc/webserver/srcsrv/httpd-2.4.41/include
Thaum pib ntawm cov ntaub ntawv no, ntxig cov kab hauv qab no:
/* Load PCRE2 */
#define HAVE_PCRE2 1
Zoo, tam sim no peb npaj txhij rau lub sijhawm tiag tiag ntawm kev sau Apache httpd nrog kev txhawb nqa PCRE2.
Cia peb mus rau peb Apache httpd qhov chaw directory thiab sau qhov no los ntawm kev ua raws cov lus txib:
make
make install
Tam sim no, yog tias txhua yam mus zoo thiab tsis muaj qhov yuam kev, tom qab ntawd koj yuav tau sib sau ua ke thiab sau Apache httpd nrog kev txhawb nqa PCRE2, uas txhais tau hais tias muaj kev hloov pauv zoo hauv Apache modules uas siv PCRE cov kab lus tsis tu ncua, ib qho ntawm cov no yog Module rewrite.
Hauv kev xaus, txoj kev no ua rau nws muaj peev xwm siv PCRE2 ua ntej tso tawm los ntawm Apache Software Foundation, Kuv vam tias ib qho kev txhawb nqa PCRE2 yuav raug tso tawm sai sai.
Tsis tas li ntawd, thaum kuaj tus qauv .htaccess, tsis muaj qhov yuam kev tshwm sim, yog tias leej twg muaj qhov yuam kev, sau rau hauv cov lus.
PS
Kuv tsis meej pem me ntsis los ntawm qhov xwm txheej ntawm kev siv ob qhov sib txawv ntawm PCRE rau kuv pawg, thiab kuv txiav txim siab kho nws.
Tau qhov twg los: www.hab.com