ΠΡΠΊΠ°ΠΌ Π΄Π° ΡΠΏΠΎΠ΄Π΅Π»Ρ ΠΎΠΏΠΈΡΠ° ΡΠΈ Ρ ΠΏΡΠ΅Π²ΠΎΠ΄Π° Π½Π° Apache 2.4 Π½Π° PCRE2, ΡΡΠΉ ΠΊΠ°ΡΠΎ Π΄ΠΎΡΠΈ PHP 7 Π²Π΅ΡΠ΅ ΠΎΡΠ΄Π°Π²Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° PCRE2, Π° ΠΎΡΠ²ΠΎΡΠ΅Π½Π°ΡΠ° ΡΠΎΡΡΡΠ΅ΡΠ½Π° ΡΠΎΠ½Π΄Π°ΡΠΈΡ Apache Π²ΡΠ΅ ΠΎΡΠ΅ Π½Π΅.
Π Π°Π·Π±ΠΈΡΠ° ΡΠ΅, Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π²Π΅ΡΠΎΡΡΠ½ΠΎ ΠΈΠ·ΠΏΡΠ΅Π²Π°ΡΠ²Π°ΠΌ ΠΈΠ·Π»ΠΈΠ·Π°Π½Π΅ΡΠΎ Π½Π° 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Π‘ΡΡΠΏΠΊΠ° ΡΠ΅ΡΠ²ΡΡΡΠ°: ΡΠ²Π°Π»ΡΠΌΠ΅ ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡ ΠΊΠΎΠ΄ ΠΎΡ Π³ΠΈΡΠ° Π½Π° Apache Π·Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° PCRE2
ΠΠ°ΠΆΠ½ΠΎ: ΠΠ·Ρ ΠΎΠ΄Π½ΠΈΡΡ ΠΊΠΎΠ΄ ΡΠ²Π°Π»ΡΠΌΠ΅ ΠΎΡ Π³ΠΈΡΠ° Π½Π° Π½Π°ΠΉ-Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ.
ΠΠ΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΅ Π΄Π° ΡΠ²Π°Π»ΠΈΠΌ Π΄Π²Π° ΡΠ°ΠΉΠ»Π° - 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 Ρ ΡΠ°ΠΉΠ»Π°, ΠΊΠΎΠΉΡΠΎ ΡΠ²Π°Π»ΠΈΡ ΠΌΠ΅ ΠΎΡ Π³ΠΈΡΠ° Π½Π° Apache.
Π‘ΡΡΠΎ ΡΠ°ΠΊΠ° ΠΎΡΠΈΠ²Π°ΠΌΠ΅ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ°:
/etc/webserver/srcsrv/httpd-2.4.41/serverΠΠ°ΠΌΠ΅Π½ΡΠΌΠ΅ ΡΠ°ΠΉΠ»Π° util_pcre.c Ρ ΡΠ°ΠΉΠ»Π°, ΠΊΠΎΠΉΡΠΎ ΡΠ²Π°Π»ΠΈΡ ΠΌΠ΅ ΠΎΡ Π³ΠΈΡΠ° Π½Π° 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 ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΈ ΠΈΠ·ΡΠ°Π·ΠΈ, Π΅Π΄ΠΈΠ½ ΠΎΡ ΡΡΡ Π΅ ΠΌΠΎΠ΄ΡΠ»ΡΡ rewrite.
Π Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅, ΡΠΎΠ·ΠΈ ΠΌΠ΅ΡΠΎΠ΄ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° PCRE2 Π΄ΠΎ ΠΎΡΠΈΡΠΈΠ°Π»Π½ΠΈΡ ΡΠ΅Π»ΠΈΠ· ΠΎΡ Apache Software Foundation. ΠΠ°Π΄ΡΠ²Π°ΠΌ ΡΠ΅ ΡΠΊΠΎΡΠΎ Π΄Π° ΠΈΠ·Π»Π΅Π·Π΅ Π²Π΅ΡΡΠΈΡ Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° PCRE2.
Π‘ΡΡΠΎ ΡΠ°ΠΊΠ° ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΠ΅ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈΡΠ΅ .htaccess Π½Π΅ Π²ΡΠ·Π½ΠΈΠΊΠ½Π°Ρ Π° Π³ΡΠ΅ΡΠΊΠΈ; Π°ΠΊΠΎ Π½ΡΠΊΠΎΠΉ ΡΡΠ΅ΡΠ½Π΅ Π³ΡΠ΅ΡΠΊΠΈ, ΠΏΠΈΡΠ΅ΡΠ΅ Π² ΠΊΠΎΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ΅.
P.S.
Π‘ΠΈΡΡΠ°ΡΠΈΡΡΠ° Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π΄Π²Π΅ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π²Π΅ΡΡΠΈΠΈ Π½Π° PCRE Π·Π° ΠΌΠΎΡ ΡΡΠ΅ΠΊ ΠΌΠ΅ ΠΏΡΠΈΡΠ΅ΡΠ½ΡΠ²Π°ΡΠ΅ ΠΌΠ°Π»ΠΊΠΎ ΠΈ ΡΠ΅ΡΠΈΡ
Π΄Π° Ρ ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°ΠΌ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: habr.com
