در این مقاله به نحوه فعالسازی http2 بر روی Apache و کنترل پنل دایرکت ادمین می پردازیم.
لطفا این مراحل را برای دریافت HTTP / 2 با آپاچی انجام دهید:
در ابتدا به احتمال زیاد OpenSSL شما از ALPN پشتیبانی نمیکند، پس در گام اول اقدامات زیر را انجام دهید:
نصب OpenSSL با پشتیبانی ALPN
بدین منظور دستورات زیر را اجرا کنید:
cd /usr/local/src/ wget ftp://ftp.openssl.org/source/openssl-1.0.2j.tar.gz tar xzf openssl-1.0.2j.tar.gz cd openssl-1.0.2j ./config --prefix=/usr/local/lib_http2 no-ssl2 no-ssl3 zlib-dynamic -fPIC make depend make install
اگر فایل openssl بدرستی دانلود نشد،از لینک زیر فایل را دانلود کنید:
https://ftp.openssl.org/source/
نصب nghttp2
در گام بعدی با اجرای دستورات زیر nghttp2 را نصب نمائید.
cd /usr/local/directadmin/custombuild ./build update ./build nghttp2
فعالسازی http2 در آپاچی
بدین مظور دستورات زیر را اجرا کنید:
cd /usr/local/directadmin/custombuild mkdir -p custom/ap2 cp -p configure/ap2/configure.apache custom/ap2/configure.apache
سپس فایل custom/ap2/configure.apache را ویرایش نمائید.
کد “–with-ssl=/usr” \ را پیدا کرده و کد زیر را جایگزین آن کنید:
"--enable-http2" \ "--enable-ssl-staticlib-deps" \ "--with-ssl=/usr/local/lib_http2/lib" \
دقت کنید ممکن است کد “–enable-http2” \ با اعمال تغییرات مراحل قبلی به فایل اضافه شده باشد و نیاز به اضافه کردن مجدد آن نمی باشد.
با دستور زیر آپاچی را مجدد بیلد کنید:
./build apache
سپس دستورات زیر را اجرا کنید:
echo 'ProtocolsHonorOrder On' >> /etc/httpd/conf/extra/httpd-includes.conf echo 'Protocols h2 h2c http/1.1' >> /etc/httpd/conf/extra/httpd-includes.conf
در گام بعد جهت بروز شدن تنظیمات دستورات زیر را اجرا کنید:
cd /usr/local/directadmin/custombuild ./build rewrite_confs
سرویس http را در پایان ریست کنید:
service httpd restart
فعالسازی HTTP2 در curl
فایل configure.curl را باز کنید:
mkdir -p /usr/local/directadmin/custombuild/custom/curl/ nano /usr/local/directadmin/custombuild/custom/curl/configure.curl
کد زیر را به آن اضافه کنید:
perl -pi -e 's|CURL_CHECK_PKGCONFIG\(zlib\)|#CURL_CHECK_PKGCONFIG(zlib)|g' configure.ac LIBS="-ldl" ./configure --with-nghttp2=/usr/local --with-ssl=/usr/local/lib_http2
وسپس دستورات زیر را در آن اجرا کنید:
cd /usr/local/directadmin/custombuild chmod 700 custom/curl/configure.curl ./build curl
نکته: توجه داشته باشید php1_mode نیاز است php-fpm تنظیم شده باشد تا این پروتکل برای سایت فعال شود.
برای تنظیم php1_mode بصورت زیر اقدام کنید:
cd /usr/local/directadmin/custombuild ./build set php1_mode php-fpm ./build php n ./build rewrite_confs
نحوه بررسی فعال بودن Http2
حال از طریق لینک HTTP/2 test می توانید فعال بودن http2 برای سایت را بررسی کنید.
برگرفته از [directadmin.com]