1. Please take a little time for this simple survey! Thank you for participating!
    Dismiss Notice
  2. Dear Pleskians, please read this carefully! New attachments and other rules Thank you!
    Dismiss Notice
  3. Dear Pleskians, I really hope that you will share your opinion in this Special topic for chatter about Plesk in the Clouds. Thank you!
    Dismiss Notice

HTTP/2 support released

Discussion in 'Official Announcements' started by custer, Apr 12, 2016.

  1. custer

    custer Administrator Staff Member

    33
     
    Joined:
    Apr 24, 2007
    Messages:
    593
    Likes Received:
    101
    Hey everyone,

    To celebrate the International Day of Human Space Flight day, we've just released HTTP/2 support in Plesk 12.5 MU#28 (changelog will be updated soon to reflect this). Our ancestors were the first to conquer space, and now we're the first to conquer HTTP/2 among control panels. ;)

    To enable HTTP/2, read the following article: https://kb.plesk.com/en/128733

    Let us know if you experience any issues. Cheers!
     
  2. eilko

    eilko Regular Pleskian

    28
    73%
    Joined:
    Aug 1, 2001
    Messages:
    468
    Likes Received:
    4
    Location:
    Enschede, Netherlands
    Plesk 12.5MU#28 on Centos7. Enabling http/2 via the KB article regenerated the apache config with modsecurity settings added, although modsecurity was disabled on the server. Apache was unable to restart. Enabled modsecurity, regenerated the config files and all is working well.
     
  3. xaocel

    xaocel New Pleskian

    0
     
    Joined:
    Apr 13, 2016
    Messages:
    1
    Likes Received:
    0
    Why isn`t http2 enabled for the panel as well?
     
  4. DylanJ

    DylanJ New Pleskian

    8
    70%
    Joined:
    Sep 8, 2014
    Messages:
    20
    Likes Received:
    1
    I'm getting cURL errors with HTTP 2 enabled. I suspect cURL needs updating but yum update reports no packages available for update but the version I have is 7.19.7 (on Centos) so I know there should be. This link https://serverfault.com/questions/321321/upgrade-curl-to-latest-on-centos/686264 provides instructions on how to update via another repo but I don't want to do this if it might break something or if there is a better way to do this for Plesk. Any suggestions?
     
  5. bulent

    bulent Regular Pleskian

    17
    35%
    Joined:
    Mar 25, 2015
    Messages:
    154
    Likes Received:
    13
    Location:
    Bulgaria
    For me it seems works fine.
     
  6. DylanJ

    DylanJ New Pleskian

    8
    70%
    Joined:
    Sep 8, 2014
    Messages:
    20
    Likes Received:
    1
    I have also seen this article https://serversforhackers.com/video/curl-with-http2-support which uses the official repo but has some different steps. The terminal command "curl -I -k https://www.mydomain.com" throws the error "curl: (35) SSL connect error"
     
  7. dash

    dash Regular Pleskian Staff Member

    28
    40%
    Joined:
    Sep 26, 2007
    Messages:
    204
    Likes Received:
    47
    Panel itself works on SPDY protocol that provides similar advantages
     
    Sergey L likes this.
  8. öndere

    öndere New Pleskian

    20
     
    Joined:
    Jan 16, 2010
    Messages:
    21
    Likes Received:
    0
    I took such error when i enable http2 support.

    WARNING: You are using a custom virtual host template(/usr/local/psa/admin/conf/templates/custom/domain/nginxDomainVirtualHost.php)
    This may cause issues with enabling HTTP/2 support for domains.
     
  9. AmaZili Communication

    AmaZili Communication Basic Pleskian

    12
    35%
    Joined:
    Aug 29, 2015
    Messages:
    64
    Likes Received:
    10
    Location:
    Lyon, France
    how will it work with a mixed environment domains (apache on some, nginx on other) ? will the pure apache stay with http 1.1 ?
    Is the http/2 only enforce when you choose php application served with nginx ?
     
  10. dash

    dash Regular Pleskian Staff Member

    28
    40%
    Joined:
    Sep 26, 2007
    Messages:
    204
    Likes Received:
    47
    Should work for all environments with NGINX in front of apache, just check that service "Reverse Proxy Server (nginx)" is running as it's described in mentioned KB https://kb.plesk.com/en/128733
     
    Sergey L likes this.
  11. AmaZili Communication

    AmaZili Communication Basic Pleskian

    12
    35%
    Joined:
    Aug 29, 2015
    Messages:
    64
    Likes Received:
    10
    Location:
    Lyon, France
    Thanks, I'll give a trial...
     
  12. öndere

    öndere New Pleskian

    20
     
    Joined:
    Jan 16, 2010
    Messages:
    21
    Likes Received:
    0
    [mng@lixx-63 ~]# /usr/local/psa/bin/http2_pref enable
    WARNING: You are using a custom virtual host template(/usr/local/psa/admin/conf/templates/custom/domain/nginxDomainVirtualHost.php)
    This may cause issues with enabling HTTP/2 support for domains.



    nginx1.9.14-centos6.16040615
    OS ‪CentOS 6.7 (Final)‬

    Plesk version 12.5.30 Update #28, last updated at April 13, 2016 07:02 PM
     
  13. AmaZili Communication

    AmaZili Communication Basic Pleskian

    12
    35%
    Joined:
    Aug 29, 2015
    Messages:
    64
    Likes Received:
    10
    Location:
    Lyon, France
    Thanks, I'd give a trial...

    Since our centos 7 server was previously updated, openssl was fine.
    We did install the Plesk 12.5 MU#28, worked fine.

    Did the /usr/local/psa/bin/http2_pref enable command line

    It took a while....

    And magic ! Everything work fine !
    Kuddows !

    Nice job from the plesk team !

    Can we expect ALPN soon ?
     
    Jan Löffler and Sergey L like this.
  14. Doctorak

    Doctorak New Pleskian

    1
    70%
    Joined:
    Apr 13, 2016
    Messages:
    9
    Likes Received:
    0


    I'm even taking warning here ...
     
  15. dash

    dash Regular Pleskian Staff Member

    28
    40%
    Joined:
    Sep 26, 2007
    Messages:
    204
    Likes Received:
    47
    Hi all,
    Not a big deal
    This output warns you that your web server's configuration has some kind of customisations that might conflict with HTTP/2 enabling.
    Probably you applied some solution from KB or Plesk Support team did it before.
    1) You can simply delete this custom configuration file: /usr/local/psa/admin/conf/templates/custom/domain/nginxDomainVirtualHost.php
    BUT in this case customisations will be lost. (do not forget to make a backup of the file)
    OR
    2) You can edit this file in the following way:
    save backup of this file somewhere
    find row similar to
    ($OPT['default'] ? ' default_server' : '') . ($OPT['ssl'] ? ' ssl' : '') ?>;
    and replace it with 2 rows:
    ($OPT['default'] ? ' default_server' : '') . ($OPT['ssl'] ? ' ssl' : '') .
    ($OPT['ssl'] && $VAR->domain->physicalHosting->proxySettings['nginxHttp2'] ? ' http2' : '') ?>;

    Now run again:
    # /usr/local/psa/bin/http2_pref enable
    If you choose way 2) then you will still see the same warning, but now can just ignore it.

    P.S. If you know what exactly issue has been fixed on your server using this custom template, please let me know and I'll check if it's needed at all now. May be the fix has been already delivered in one of Plesk 12.5 updates and is not necessary anymore.

    Thanks,
     
  16. öndere

    öndere New Pleskian

    20
     
    Joined:
    Jan 16, 2010
    Messages:
    21
    Likes Received:
    0
  17. SörenP

    SörenP New Pleskian

    9
    20%
    Joined:
    Nov 1, 2013
    Messages:
    17
    Likes Received:
    0
    Location:
    Hamburg
    Nice! It works!
     
  18. trialotto

    trialotto Golden Pleskian Plesk Guru

    37
     
    Joined:
    Sep 28, 2009
    Messages:
    1,443
    Likes Received:
    206
    @dash, (and @custer)

    If I am not mistaken, Apache is still on HTTP/1.

    After all, the http2_pref script does not seem to handle the (required) HTTP/2 settings for Apache.

    Can you confirm or state otherwise?

    Anyway, note the following REQUESTS:

    a) the http2_pref script should preferably be in .../admin/sbin with the root being /usr/local/ (CentOS/RHEL) or /opt/psa (Ubuntu/Debian)

    b) a button or function, for enabling/disabling HTTP/2, should be present in the Plesk Panel (potentially under "Tools & Settings > Apache Web Server")

    c) automatically add proper SSL certificates (for instance, letsencrypt certificates): HTTP/2 does not require those, but most of the HTTP/2 compatible browsers DO (!)


    If anyone of the forum members likes these requests or the added value thereof, I just suggest that you click on "Like" for this post, in order to support the requests.

    Regards....
     
  19. IgorG

    IgorG Forums Analyst Staff Member

    49
    24%
    Joined:
    Oct 27, 2009
    Messages:
    24,557
    Likes Received:
    1,241
    Location:
    Novosibirsk, Russia
    As far as I remember support of HTTP/2 has been added since version 2.4.17 as mod_http2 and if I'm not mistaken, at the moment, there are no this or higher Apache versions in the official repos of OS vendors.
     
  20. trialotto

    trialotto Golden Pleskian Plesk Guru

    37
     
    Joined:
    Sep 28, 2009
    Messages:
    1,443
    Likes Received:
    206
    @IgorG,

    Correct, Apache 2.4.17 supports http2 on a VirtualHost and Server level, but the following is required

    a) the module has to be enabled,

    b) activation within the VirtualHost or the Server context: module support on the VirtualHost AND the server level is available

    c) activation for HTTP/2 over TLS and/or HTTP/2 over TCP: module support is available for TLS or TCP, which requires the following lines

    Protocols h2 http/1.1 (for HTTP/2 over TLS)

    and/or

    Protocols h2c http/1.1 (for HTTP/2 over TCP)

    within the VirtualHost or the Server context.


    In short, one still needs the line

    Protocols h2 h2c http/1.1 (on the Server level)

    OR

    Protocols h2 http/1.1 (on the VirtualHost level, with http connections)
    Protocols h2c http/1.1 (on the VirtualHost level, with https connections)

    and it simply was the question whether Plesk default Apache package is adjusted to contain the configuration required for HTTP/2.

    Regards.....
     
Loading...