ืื ื ืจืืฆื ืืืืืง ืืช ืื ืืกืืื ืฉืื ืืชืจืืื Apache 2.4 ื-PCRE2, ืืืืืื ืฉืืคืืื PHP 7 ืชืืืืช ืืกืคืจืืืช PCRE2 ืืืฉื ืืื ืจื, ืื ืงืจื ืืงืื ืืคืชืื Apache Software Foundation ืขืืืื ืื.
ืืืืื ืฉืืขืช ืื ื ืื ืจืื ืืงืืื ืืช ืืืืืจืช ื-Apache ืขื ืชืืืื ื-PCRE2, ืืืืืื ืฉืื ื ืืฉืชืืฉ ืืืงืืจืืช ืื-Apache git, ืื ืฉืืืืจ ืื ื ืฉืชืืืื ื-PCRE2 ืืคืฉืจืืช ืืืจ ืืืืืืจื ืืืื, ืืื ืืื ืฉืืืจ ืจืืฆื ืชืืืื ื-PCRE2 ื- Apache 2.4, ืืื ืฉืื ืจืืฆื ืืืืืช ืืฉืืจืืจ ืื ื ืืืืง ืืช ืืืช ืืืจืืื.
ืืืืืจ ืื ืื ืฉืืชื ืืืกืฃ ืืช ืื ืืชืืื ืืช ืื ืืจืฉืืช ืืงืื ืืงืืจ, ืจืฉืืืช ืชืืื ืืช ืืืจืกืืืช ืืืื ืืชืืืช ืฉืืจืืช ืืื:
PCRE2-10.33
ืืคืจืื 1.7.0
ืืคืจืื-ืขื 1.6.1
ืืคืืฆ 'ื
ืฉืื ืจืืฉืื: ืื ื ืืืืืืจ PCRE2
ืืื ื ืืื ืขื ืจืืข ืืืจืืช ืืืงืืจืืช ืืืืงืืจืืช ืืจืฉืืืื ืืืืืื ืฉืื ืืจืืจ ืืื, ืื ืคืจืงืช ืืช ืืืจืืืื, ืขืืืจ ืืชืืงืื ืขื ืืงืืจืืช PCRE2, ืืืคืขื ืืช ืืคืงืืื ืืืื ืืื ืืชืืื ื-UTF:
./configure --prefix=/etc/webserver/pcre2-1033 --enable-pcre2-8 --enable-pcre2-16 --enable-pcre2-32 --enable-unicode
ืฆืืื ืืช ืื ืชืื ืฉืื ืืงืืืืืช ืื ืืื ื ืจืืฆื ืืืฉืชืืฉ ืืืืงืื ืืกืื ืืจืื ืืืชืงื ืช ืืกืคืจืืื:
--prefix=/ะฒะฐั/ะฟััั/ะดะพ ะฑะธะฑะปะธะพัะตะบะธ
ืืืจืช, ืืชื ืืืกืฃ ืืื ืงืืืืืช.
ืืคืงืืืืช ืื ืืชืจืืช ืืฆืืืขืืช ืขื ืืืืืช ืชืืืื ืขืืืจ ืืืืงื ืงืื PCRE 8-bit, 16-bit ื-32-bit, ืืืจืกื ืื ืืืจืืื ืืืฆืขื ืืืชื.
ืืืืืื, ืื ื ืืจืืืืื ืืช ืืืืจ ืืื ืืืืฆืขืืช ืืืฆืืข ืจืฆืืฃ ืฉื ืคืงืืืืช:
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: /your/path/to the library.
ืืื ื ืจืืื ืืช ืืืคืจืื ืืืืชืื ืฉืื ื:
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 ืืื ืืชืืื ื- 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, ืฉืืืจืื ื ืื-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 ืกืื ืืจืื, ืื ืืชืจืืฉื ืฉืืืืืช, ืื ืืืืฉืื ืืฉ ืฉืืืืืช, ืืชืื ืืชืืืืืช.
ื .ื.
ืืืืชื ืงืฆืช ืืืืืื ืืืืฆื ืฉื ืฉืืืืฉ ืืฉืชื ืืจืกืืืช ืฉืื ืืช ืฉื PCRE ืขืืืจ ืืืืกื ืืช ืฉืื, ืืืืืืชื ืืชืงื ืืช ืื.
ืืงืืจ: www.habr.com