ΠΡΠΊΠ°ΠΌ Π΄Π° ΡΠΏΠΎΠ΄Π΅Π»Ρ ΠΎΠΏΠΈΡΠ° ΡΠΈ ΠΎΡ ΠΌΠΈΠ³ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Apache 2.4 ΠΊΡΠΌ PCRE2, ΡΡΠΉ ΠΊΠ°ΡΠΎ Π΄ΠΎΡΠΈ PHP 7 ΠΎΡΠ΄Π°Π²Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° PCRE2, Π° Apache Software Foundation Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄ Π²ΡΠ΅ ΠΎΡΠ΅ Π½Π΅ Π³ΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°.
Π Π°Π·Π±ΠΈΡΠ° ΡΠ΅, Π²Π΅ΡΠΎΡΡΠ½ΠΎ ΡΡΠΌ ΠΏΡΠ΅Π΄ Π²Π΅ΡΡΠΈΡΡΠ° Π½Π° Apache Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° PCRE2 Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ°, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌ ΠΈΠ·Ρ
ΠΎΠ΄Π½ΠΈΡΠ΅ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π½Π° Apache git, ΠΊΠΎΠ΅ΡΠΎ Π½ΠΈ ΠΊΠ°Π·Π²Π°, ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° 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
Π, ΠΈΠ»ΠΈ: /Π²Π°ΡΠΈΡΡ/ΠΏΡΡ/ΠΊΡΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ°/ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ
ΠΠ°ΠΌΠ΅ΡΠ΅ΡΠ΅ ΡΠ°ΠΉΠ»Π° apr_rules.mk Π² ΡΠ°Π·ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ ΠΈ Π΄ΠΎΠ±Π°Π²Π΅ΡΠ΅ Π² ΠΊΡΠ°Ρ Π½Π° ΡΠ΅Π΄Π°, ΠΊΡΠ΄Π΅ΡΠΎ:
EXTRA_LIBS=-lrt -lcrypt -lpthread -ldl
ΠΡΡΠ·ΠΊΠ° Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ°:
-lpcre2-8 -L/Π²Π°Ρ/ΠΏΡΡΡ/Π΄ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ pcre2/lib
ΠΠ°ΠΏΠ°Π·Π²Π°ΠΌΠ΅ ΠΈ ΠΎΡΠΈΠ²Π°ΠΌΠ΅ Π² ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Π½Π° ΠΈΠ·ΡΠΎΡΠ½ΠΈΡΠΈΡΠ΅ Π½Π° 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
Π‘ΡΡΠΏΠΊΠ° ΡΠ΅ΡΠ²ΡΡΡΠ°: ΠΠ·ΡΠ΅Π³Π»Π΅ΡΠ΅ Apache Git Sources Π·Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° PCRE2
ΠΠ°ΠΆΠ½ΠΎ: ΠΠ·ΡΠ΅Π³Π»ΡΠΌΠ΅ ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡΠ΅ ΠΊΠΎΠ΄ΠΎΠ²Π΅ ΠΎΡ Π½Π°ΠΉ-Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π½Π° git.
Π’ΡΡΠ±Π²Π° Π΄Π° ΠΈΠ·ΡΠ΅Π³Π»ΠΈΠΌ Π΄Π²Π° ΠΈΠ·ΡΠΎΡΠ½ΠΈΠΊΠ° ΠΊΠ°ΡΠΎ ap_regex.h ΠΈ util_pcre.c, Π²ΡΡΠ·ΠΊΠΈ ΠΏΠΎ-Π΄ΠΎΠ»Ρ:
Π‘Π΅Π³Π° ΠΎΡΠΈΠ΄Π΅ΡΠ΅ Π²ΡΠ² Π²Π°ΡΠ°ΡΠ° httpd ΠΈΠ·Ρ ΠΎΠ΄Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Π½Π° Apache ΠΈ ΡΡΠ·Π΄Π°ΠΉΡΠ΅ 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, ΠΈΠ·ΡΠ΅Π³Π»Π΅Π½ ΠΎΡ Π½Π°Ρ ΠΎΡ Apache git.
ΠΡΠΈΠ²Π°ΠΌΠ΅ ΠΈ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ°:
/etc/webserver/srcsrv/httpd-2.4.41/server
ΠΠ°ΠΌΠ΅Π½ΡΠΌΠ΅ ΡΠ°ΠΉΠ»Π° util_pcre.c Ρ ΡΠΎΠ·ΠΈ, ΠΊΠΎΠΉΡΠΎ ΡΠΌΠ΅ ΠΈΠ·ΡΠ΅Π³Π»ΠΈΠ»ΠΈ ΠΎΡ Apache git
Π‘Π΅Π³Π° ΠΎΡΡΠ°Π²Π° Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡΠ΅ 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 ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΈ ΠΈΠ·ΡΠ°Π·ΠΈ, Π΅Π΄ΠΈΠ½ ΠΎΡ ΡΡΡ Π΅ Module rewrite.
Π Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅, ΡΠΎΠ·ΠΈ ΠΌΠ΅ΡΠΎΠ΄ ΠΏΡΠ°Π²ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° PCRE2 ΠΏΡΠ΅Π΄ΠΈ ΠΏΡΡΠΊΠ°Π½Π΅ΡΠΎ ΠΎΡ Apache Software Foundation, Π½Π°Π΄ΡΠ²Π°ΠΌ ΡΠ΅ ΡΠΊΠΎΡΠΎ Π΄Π° Π±ΡΠ΄Π΅ ΠΏΡΡΠ½Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° PCRE2.
Π‘ΡΡΠΎ ΡΠ°ΠΊΠ° ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΠ΅ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈΡ .htaccess Π½ΡΠΌΠ°ΡΠ΅ Π³ΡΠ΅ΡΠΊΠΈ, Π°ΠΊΠΎ Π½ΡΠΊΠΎΠΉ ΠΈΠΌΠ° Π³ΡΠ΅ΡΠΊΠΈ, ΠΏΠΈΡΠ΅ΡΠ΅ Π² ΠΊΠΎΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ΅.
PS
Π‘ΠΈΡΡΠ°ΡΠΈΡΡΠ° Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π΄Π²Π΅ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π²Π΅ΡΡΠΈΠΈ Π½Π° PCRE Π·Π° ΠΌΠΎΡ ΡΡΠ΅ΠΊ ΠΌΠ΅ ΠΏΡΠΈΡΠ΅ΡΠ½ΠΈ ΠΌΠ°Π»ΠΊΠΎ ΠΈ ΡΠ΅ΡΠΈΡ
Π΄Π° Π³ΠΎ ΠΏΠΎΠΏΡΠ°Π²Ρ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com