ΠΡΠΊΠ°ΠΌ Π΄Π° ΡΠΏΠΎΠ΄Π΅Π»Ρ ΠΎΠΏΠΈΡΠ° ΡΠΈ Π² ΡΡΠ°Π½ΡΡΠΎΡΠΌΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Apache 2.4 Π½Π° PCRE2, ΡΡΠΉ ΠΊΠ°ΡΠΎ Π΄ΠΎΡΠΈ PHP 7 ΠΎΡΠ΄Π°Π²Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° PCRE2, Π° open source Apache Software Foundation Π²ΡΠ΅ ΠΎΡΠ΅ Π½Π΅.
Π Π°Π·Π±ΠΈΡΠ° ΡΠ΅, Π²Π΅ΡΠΎΡΡΠ½ΠΎ Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΈΠ·ΠΎΡΡΠ°Π²Π°ΠΌ ΠΎΡ ΡΠ΅Π»ΠΈΠ·Π° Π½Π° Apache Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° PCRE2, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌ ΠΈΠ·Ρ
ΠΎΠ΄Π½ΠΈΡ ΠΊΠΎΠ΄ ΠΎΡ git Π½Π° Apache, ΠΊΠΎΠ΅ΡΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°, ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° PCRE2 ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½Π° Π² ΡΠ»Π΅Π΄Π²Π°ΡΠΈΡ ΡΠ΅Π»ΠΈΠ·. ΠΠΎ Π·Π° ΡΠ΅Π·ΠΈ, ΠΊΠΎΠΈΡΠΎ Π²Π΅ΡΠ΅ ΠΈΡΠΊΠ°Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° PCRE2 Π² Apache 2.4 ΠΈ Π½Π΅ ΠΈΡΠΊΠ°Ρ Π΄Π° ΡΠ°ΠΊΠ°Ρ ΡΠ΅Π»ΠΈΠ·Π°, ΡΠΏΠΎΠ΄Π΅Π»ΡΠΌ Π΅Π΄ΠΈΠ½ ΠΎΡ Π½Π°ΡΠΈΠ½ΠΈΡΠ΅.
Π‘ΡΠ°ΡΠΈΡΡΠ° ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°, ΡΠ΅ ΡΡΠ±ΠΈΡΠ°ΡΠ΅ Π²ΡΠΈΡΠΊΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ ΡΠΎΡΡΡΠ΅Ρ ΠΎΡ ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅, ΡΠΏΠΈΡΡΠΊ Ρ ΡΠΎΡΡΡΠ΅Ρ ΠΈ Π²Π΅ΡΡΠΈΠΈ ΠΊΡΠΌ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π½Π° Π½Π°ΠΏΠΈΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ°ΡΠΈΡΡΠ°:
PCRE2-10.33
APR 1.7.0
APR-util 1.6.1
Apache httpd 2.4.41
Π‘ΡΡΠΏΠΊΠ° ΠΏΡΡΠ²Π°: ΡΡΠ±ΠΈΡΠ°Π½Π΅ ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½Π΅ Π½Π° PCRE2
ΠΡΠΎΠΏΡΡΠΊΠ°ΠΌΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Ρ ΠΈΠ·ΡΠ΅Π³Π»ΡΠ½Π΅ Π½Π° ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡΠ΅ ΠΊΠΎΠ΄ΠΎΠ²Π΅ ΠΎΡ ΠΎΡΠΈΡΠΈΠ°Π»Π½ΠΈ ΠΈΠ·ΡΠΎΡΠ½ΠΈΡΠΈ, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΡΠΎΠ²Π° Π΅ ΡΠ²ΡΡΠ΄Π΅ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ. Π’Π°ΠΊΠ° ΡΠ΅ ΡΠ»Π΅Π΄ ΠΊΠ°ΡΠΎ ΡΠ°Π·ΠΎΠΏΠ°ΠΊΠΎΠ²Π°ΡΠ΅ Π°ΡΡ ΠΈΠ²Π°, ΠΏΡΠ΅ΠΌΠΈΠ½Π΅ΡΠ΅ Π² ΠΏΠ°ΠΏΠΊΠ°ΡΠ° Ρ ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡΠ΅ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π½Π° PCRE2 ΠΈ ΠΈΠ·ΠΏΡΠ»Π½Π΅ΡΠ΅ ΡΠ»Π΅Π΄Π½Π°ΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π·Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° UTF:
./configure --prefix=/etc/webserver/pcre2-1033 --enable-pcre2-8 --enable-pcre2-16 --enable-pcre2-32 --enable-unicodeΠ ΠΏΡΠ΅ΡΠΈΠΊΡΠ° ΡΠΊΠ°ΠΆΠ΅ΡΠ΅ ΡΠ²ΠΎΡ ΠΏΡΡ, Π°ΠΊΠΎ Π½Π΅ ΠΈΡΠΊΠ°ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΡΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ°:
--prefix=/Π²Π°Ρ/ΠΏΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ°ΠΠ½Π°ΡΠ΅ ΡΡΠ±ΠΈΡΠ°ΡΠ΅ Π±Π΅Π· ΠΏΡΠ΅ΡΠΈΠΊΡ.
ΠΡΡΠ°Π½Π°Π»ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ ΠΏΠΎΠΊΠ°Π·Π²Π°Ρ ΠΊΠ°ΠΊ Π΄Π° Π²ΠΊΠ»ΡΡΠΈΡΠ΅ 8-Π±ΠΈΡΠΎΠ²ΠΈ, 16-Π±ΠΈΡΠΎΠ²ΠΈ ΠΈ 32-Π±ΠΈΡΠΎΠ²ΠΈ ΠΊΠΎΠ΄ΠΎΠ²ΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π½Π° PCRE. Π ΡΠΎΠ·ΠΈ Π²Π°ΡΠΈΠ°Π½Ρ ΡΠ±ΠΎΡΠΊΠ°ΡΠ° Π΅ Π½Π°ΠΏΡΠ°Π²Π΅Π½Π° Ρ ΡΡΡ .
Π ΡΠ°Π·Π±ΠΈΡΠ° ΡΠ΅, ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°ΠΌΠ΅ Π²ΡΠΈΡΠΊΠΎ, ΠΊΠ°ΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°ΠΌΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅:
make
make install ΠΠΊΠΎ Π²ΡΠΈΡΠΊΠΎ Π΅ Π½Π°ΡΠ΅Π΄ ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΡΠ° Π΅ ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π»Π° Π±Π΅Π· Π³ΡΠ΅ΡΠΊΠΈ, ΠΏΡΠ΅ΠΌΠΈΠ½Π΅ΡΠ΅ ΠΊΡΠΌ ΡΠ»Π΅Π΄Π²Π°ΡΠ°ΡΠ° ΡΡΡΠΏΠΊΠ°.
Π‘ΡΡΠΏΠΊΠ° Π²ΡΠΎΡΠ°: ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° PCRE2 Π² APR
Π’ΡΠΉ ΠΊΠ°ΡΠΎ Apache ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ° ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡ ΠΊΠΎΠ΄ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° APR, ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ²ΡΡΠΆΠ΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° Π² ΡΠ°ΠΌΠΈΡ APR, Π² ΠΏΡΠΎΡΠΈΠ²Π΅Π½ ΡΠ»ΡΡΠ°ΠΉ ΡΠ° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΈ Π³ΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈ Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π² ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡ ΠΊΠΎΠ΄ Π½Π° Apache, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π½ΠΎΠ²ΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π° PCRE2.
ΠΡΠΎΠΏΡΡΠΊΠ°ΠΌΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Ρ ΠΈΠ·ΡΠ΅Π³Π»ΡΠ½Π΅ Π½Π° ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡΠ΅ ΠΊΠΎΠ΄ΠΎΠ²Π΅ ΠΎΡ ΠΎΡΠΈΡΠΈΠ°Π»Π½ΠΈ ΠΈΠ·ΡΠΎΡΠ½ΠΈΡΠΈ, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΡΠΎΠ²Π° Π΅ ΡΠ²ΡΡΠ΄Π΅ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ. Π‘Π»Π΅Π΄ ΠΊΠ°ΡΠΎ ΡΠ°Π·ΠΎΠΏΠ°ΠΊΠΎΠ²Π°ΡΠ΅ Π°ΡΡ ΠΈΠ²Π°, ΠΈΠ·ΠΏΡΠ»Π½Π΅ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° APR:
./configure --prefix=/etc/webserver/apr-170ΠΡΡΠ΅ΡΡΠ²Π΅Π½ΠΎ, Π² ΠΏΡΠ΅ΡΠΈΠΊΡΠ° ΡΠΊΠ°ΠΆΠ΅ΡΠ΅ ΡΠ²ΠΎΡ ΠΏΡΡ, Π°ΠΊΠΎ Π½Π΅ ΠΈΡΠΊΠ°ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΡΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ°, ΠΈΠ»ΠΈ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°ΠΉΡΠ΅:
--prefix=/Π²Π°Ρ/ΠΏΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ°Π‘Π»Π΅Π΄ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° ΠΎΡΠΈΠ΄Π΅ΡΠ΅ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°: /etc/webserver/srcsrv/apr-1.7.0/build
ΠΠ»ΠΈ: /Π²Π°Ρ/ΠΏΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ°/build
ΠΠ°ΠΌΠ΅ΡΠ΅ΡΠ΅ ΡΠ°ΠΉΠ»Π° apr_rules.mk Π² ΡΠΎΠ·ΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ ΠΈ Π΄ΠΎΠ±Π°Π²Π΅ΡΠ΅ Π² ΠΊΡΠ°Ρ Π½Π° ΡΠ΅Π΄Π°, ΠΊΡΠ΄Π΅ΡΠΎ:
EXTRA_LIBS=-lrt -lcrypt -lpthread -ldlΠ‘Π²ΡΡΠ·Π²Π°Π½Π΅ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ°:
-lpcre2-8 -L/Π²Π°Ρ/ΠΏΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° pcre2/libΠΠ°ΠΏΠ°Π·Π²Π°ΠΌΠ΅, ΠΎΠΏΠΈΡΠ²Π°ΠΌΠ΅ Π΄Π° Π²Π»Π΅Π·Π΅ΠΌ Π² ΠΊΠΎΡΠ΅Π½Π½Π°ΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Π½Π° ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡΠΈΡΠ΅ Π½Π° APR: /Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ.
ΠΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°ΠΌΠ΅ Π½Π°ΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ APR:
make
make installΠΠΊΠΎ Π²ΡΠΈΡΠΊΠΎ Π΅ Π½Π°ΡΠ΅Π΄ ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΡΠ° Π΅ ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π»Π° Π±Π΅Π· Π³ΡΠ΅ΡΠΊΠΈ, ΠΏΡΠ΅ΠΌΠΈΠ½Π΅ΡΠ΅ ΠΊΡΠΌ ΡΠ»Π΅Π΄Π²Π°ΡΠ°ΡΠ° ΡΡΡΠΏΠΊΠ°.
Π‘ΡΡΠΏΠΊΠ° ΡΡΠ΅ΡΠ°: ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°ΠΌΠ΅ ΠΎΡ ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡΠΈΡΠ΅ APR-util Π·Π° Apache
Π‘Π²Π°Π»ΠΈΠ»ΠΈ ΡΡΠ΅ ΡΠ°Π·ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΎΡ ΠΎΡΠΈΡΠΈΠ°Π»Π½ΠΈΡ ΠΈΠ·ΡΠΎΡΠ½ΠΈΠΊ, ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°ΠΌΠ΅ Π² ΠΊΠΎΡΠ΅Π½Π½Π°ΡΠ° ΠΏΠ°ΠΏΠΊΠ° Π½Π° ΡΠ°Π·Π°ΡΡ ΠΈΠ²ΠΈΡΠ°Π½ΠΈΡ Π°ΡΡ ΠΈΠ² Ρ APR-util ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ Π²ΡΠ²Π΅ΠΆΠ΄Π°ΠΌΠ΅ ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ:
./configure --prefix=/etc/webserver/apr-util-161 --with-apr=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ apr
make
make installΠΡΡΠ΅ΡΡΠ²Π΅Π½ΠΎ, Π² ΠΏΡΠ΅ΡΠΈΠΊΡΠ° ΡΠΊΠ°ΠΆΠ΅ΡΠ΅ ΡΠ²ΠΎΡ ΠΏΡΡ, Π°ΠΊΠΎ Π½Π΅ ΠΈΡΠΊΠ°ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΡΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ°, ΠΈΠ»ΠΈ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°ΠΉΡΠ΅:
--prefix=/Π²Π°Ρ/ΠΏΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ°Π’ΡΠΊ ΡΡΡΠΎ ΡΠ²ΡΡΠ·Π²Π°ΠΌΠ΅ Π½Π°ΡΠΈΡ APR:
--with-apr=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ aprΠ‘ΡΡΠΏΠΊΠ° ΡΠ΅ΡΠ²ΡΡΡΠ°: ΡΠ²Π°Π»ΡΠΌΠ΅ ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡΠΈΡΠ΅ ΠΎΡ Git Π·Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° PCRE2
ΠΠ°ΠΆΠ½ΠΎ: Π‘Π²Π°Π»ΡΠΌΠ΅ ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡΠΈΡΠ΅ ΠΎΡ Git Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½Π°ΡΠ° Π²Π΅ΡΡΠΈΡ.
ΠΠ΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΅ Π΄Π° ΡΠ²Π°Π»ΠΈΠΌ Π΄Π²Π° ΠΈΠ·Ρ
ΠΎΠ΄Π½ΠΈΠΊΠ° ΠΊΠ°ΡΠΎ ap_regex.h ΠΈ util_pcre.c, Π»ΠΈΠ½ΠΊΠΎΠ²Π΅ΡΠ΅ ΠΏΠΎ-Π΄ΠΎΠ»Ρ:
Π‘Π΅Π³Π° ΠΎΡΠΈΠ²Π°ΠΌΠ΅ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ° Π½Π° ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡΠΈΡΠ΅ Π½Π° Apache httpd ΠΈ ΡΠ±ΠΎΡΠΈΠΌ Apache Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ:
./configure --prefix=/etc/webserver/apache-2441 --with-apr=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ apr --with-apr-util=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ apr-util --with-pcre=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ pcre2/bin/pcre2-configΠΡΡΠ΅ΡΡΠ²Π΅Π½ΠΎ, Π² ΠΏΡΠ΅ΡΠΈΠΊΡΠ° ΡΠΊΠ°ΠΆΠ΅ΡΠ΅ ΡΠ²ΠΎΡ ΠΏΡΡ, Π°ΠΊΠΎ Π½Π΅ ΠΈΡΠΊΠ°ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΡΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ°, ΠΈΠ»ΠΈ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°ΠΉΡΠ΅:
--prefix=/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Apache httpdΠ‘ΡΡΠΎ ΡΠ°ΠΊΠ°, Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° Apache ΡΠΊΠ°Π·Π²Π°ΡΠ΅ ΠΏΠΎ Π²Π°ΡΠ΅ ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΠ΅, ΠΈΠΌΠ°ΠΌ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅ Π·Π° Π²ΠΊΠ»ΡΡΠ²Π°Π½Π΅ ΠΈ ΠΈΠ·ΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ.
Π‘Π»Π΅Π΄ ΡΠΎΠ²Π° ΠΎΡΠΈΠ²Π°ΠΌΠ΅ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ° Π½Π° ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡΠΈΡΠ΅ Π½Π° Apache httpd, ΠΏΡΠΈ ΠΌΠ΅Π½ ΡΠΎΠ²Π° Π΅:
/etc/webserver/srcsrv/httpd-2.4.41Π Π°Π·Π±ΠΈΡΠ° ΡΠ΅, ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°ΡΠ΅ Π² ΡΠ²ΠΎΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³, Π·Π°ΠΌΠ΅Π½ΡΠΌΠ΅ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°:
/etc/webserver/srcsrv/httpd-2.4.41/includeΠ€Π°ΠΉΠ» ap_regex.h Ρ ΡΠΎΠ·ΠΈ, ΠΊΠΎΠΉΡΠΎ ΡΠ²Π°Π»ΠΈΡ ΠΌΠ΅ ΠΎΡ Git Π½Π° Apache.
Π‘ΡΡΠΎ ΡΠ°ΠΊΠ° ΠΎΡΠΈΠ²Π°ΠΌΠ΅ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°:
/etc/webserver/srcsrv/httpd-2.4.41/serverΠΠ°ΠΌΠ΅Π½ΡΠΌΠ΅ ΡΠ°ΠΉΠ»Π° util_pcre.c Ρ ΡΠΎΠ·ΠΈ, ΠΊΠΎΠΉΡΠΎ ΡΠ²Π°Π»ΠΈΡ ΠΌΠ΅ ΠΎΡ Git Π½Π° Apache.
Π‘Π΅Π³Π° ΠΎΡΡΠ°Π²Π° ΡΠ°ΠΌΠΎ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π²ΡΡΠ·ΠΊΠ°ΡΠ° Ρ PCRE2 Π² ΡΠ°ΠΌΠΈΡ Apache, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΅ Π΄Π° Π½Π°ΠΌΠ΅ΡΠΈΠΌ ΡΠ°ΠΉΠ»Π° ap_config_auto.h, ΡΠΎΠΉ ΡΠ΅ Π½Π°ΠΌΠΈΡΠ° Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°:
/etc/webserver/srcsrv/httpd-2.4.41/includeΠ ΡΠ°ΠΌΠΎΡΠΎ Π½Π°ΡΠ°Π»ΠΎ Π½Π° ΡΠΎΠ·ΠΈ ΡΠ°ΠΉΠ» ΠΏΠΎΡΡΠ°Π²Π΅ΡΠ΅ ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΡΠ΅Π΄ΠΎΠ²Π΅:
/* Load PCRE2 */
#define HAVE_PCRE2 1 Π, ΡΠ΅Π³Π° ΡΠΌΠ΅ Π³ΠΎΡΠΎΠ²ΠΈ Π·Π° ΠΈΡΡΠΈΠ½ΡΠΊΠΈΡ ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ Π½Π° Apache httpd Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° PCRE2.
ΠΡΠ΅ΠΌΠΈΠ½Π°Π²Π°ΠΌΠ΅ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ° Π½Π° ΠΈΠ·Ρ
ΠΎΠ΄Π½ΠΈΡΠΈΡΠ΅ Π½Π° Apache httpd ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°ΠΌΠ΅ ΡΠΎΠ²Π° Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅:
make
make installΠΡΠΎ ΡΠ΅Π³Π°, Π°ΠΊΠΎ Π²ΡΠΈΡΠΊΠΎ Π΅ ΠΌΠΈΠ½Π°Π»ΠΎ Π΄ΠΎΠ±ΡΠ΅ ΠΈ Π±Π΅Π· Π³ΡΠ΅ΡΠΊΠΈ, ΡΠ΅ ΠΈΠΌΠ°ΡΠ΅ ΡΠ³Π»ΠΎΠ±Π΅Π½ ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½ Apache httpd Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° PCRE2, ΠΊΠΎΠ΅ΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π²Π° ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»Π½ΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π² ΠΌΠΎΠ΄ΡΠ»ΠΈΡΠ΅ Π½Π° Apache, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠΈ PCRE ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΈ ΠΈΠ·ΡΠ°Π·ΠΈ, Π΅Π΄ΠΈΠ½ ΠΎΡ ΠΊΠΎΠΈΡΠΎ Π΅ ΠΌΠΎΠ΄ΡΠ»ΡΡ Π·Π° ΠΏΡΠ΅ΠΈΠΌΠ΅Π½ΡΠ²Π°Π½Π΅.
Π Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅, ΡΠΎΠ·ΠΈ ΠΌΠ΅ΡΠΎΠ΄ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° PCRE2 Π΄ΠΎ ΠΎΡΠΈΡΠΈΠ°Π»Π½ΠΎΡΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΡ Apache Software Foundation, Π½Π°Π΄ΡΠ²Π°ΠΌ ΡΠ΅ ΡΠΊΠΎΡΠΎ Π΄Π° ΠΈΠ·Π»Π΅Π·Π΅ Π²Π΅ΡΡΠΈΡ Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° PCRE2.
Π‘ΡΡΠΎ ΡΠ°ΠΊΠ° ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΠ΅ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈΡΠ΅ .htaccess Π½Π΅ Π²ΡΠ·Π½ΠΈΠΊΠ½Π°Ρ Π° Π³ΡΠ΅ΡΠΊΠΈ, Π°ΠΊΠΎ Π½ΡΠΊΠΎΠΉ ΠΈΠΌΠ° Π³ΡΠ΅ΡΠΊΠΈ, Π½Π΅ΠΊΠ° ΠΏΠΈΡΠ΅ Π² ΠΊΠΎΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ΅.
P.S.
ΠΠ°Π»ΠΊΠΎ ΠΌΠ΅ ΠΏΡΠΈΡΠ΅ΡΠ½ΡΠ²Π°ΡΠ΅ ΡΠΈΡΡΠ°ΡΠΈΡΡΠ° Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π΄Π²Π΅ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π²Π΅ΡΡΠΈΠΈ Π½Π° PCRE Π·Π° ΠΌΠΎΡ ΡΡΠ΅ΠΊ, ΡΠ°ΠΊΠ° ΡΠ΅ ΡΠ΅ΡΠΈΡ
Π΄Π° Π³ΠΎ ΠΏΠΎΠΏΡΠ°Π²Ρ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: habr.com
