logo
Apache Lounge
Webmasters

 


About

Forum Index Downloads Search Register Log in  RSS Apache Lounge
 



Keep Server Online

If you find the Apache Lounge, the downloads and overall help useful, please express your satisfaction with a donation.

or

Bitcoin

A donation makes a contribution towards the costs, the time and effort that's going in this site and building.

Thank You! Steffen

Apache Lounge is not sponsored.

Your donations will help to keep this site alive and well, and continuing building binaries.



mod_http2 :: HowTo & Info & Tips

 
Post new topic   Reply to topic    Apache Forum Index -> How-to's & Documentation & Tips



View previous topic :: View next topic  
Author Message
Steffen
Moderator


Joined: 15 Oct 2005
Posts: 2580
Location: Hilversum, NL, EU

PostPosted: Sat 10 Oct '15 10:29    Post subject: mod_http2 :: HowTo & Info & Tips Reply with quote

Apache 2.4.17 contains mod_http2 (formely mod_h2) and other necessary changes needed for mod_http2. Mod_http2 is contributed by Stefan Eissing (greenbytes GmbH), a great job.

A short intro HTTP/2 is at https://http2.akamai.com/ and https://en.wikipedia.org/wiki/HTTP/2

H2 requires OpenSSL 1.0.2 and it is advised to use the Modern compatibility ciphers at : https://wiki.mozilla.org/Security/Server_Side_TLS#Recommended_configurations They give with SSLLabs a good score and in Chrome "using modern cipher suite".

The h2 protocol (http/2 over TLS/1.2) is the only protocol that the current major browsers support, like Chrome, Firefox, IOS9, Win10. The h2c (http/2 over http and no browser currently supports it) is a non-encrypted protocol that mod_http2 also supports and maybe the browsers will chill out eventually and support it. After all, not everything needs encryption and therefor a waste of resources on both ends of a connection.

There are two new core directives available, Protocols and ProtocolsHonorOrder. In the case of mod_h2 for h2:
Code:
LoadModule http2_module modules/mod_http2.so
<IfModule http2_module>
    ProtocolsHonorOrder On
    Protocols h2 http/1.1
</IfModule>
 

For more info and configuration, see: http://icing.github.io/mod_h2/howto.html and https://httpd.apache.org/docs/2.4/mod/mod_http2.html


To see if your browser is using HTTP/2, Chrome has a nice extension HTTP/2 and SPDY indicator, with Windows 10 you can see it with F12 / Network, and Firefox has HTTP/2 and SPDY indicator

See also for Curl with http/2: https://www.apachelounge.com/viewtopic.php?t=6784

Please post issues with mod_http2 in the Apache forum.


Last edited by Steffen on Mon 12 Oct '15 21:59; edited 1 time in total
Back to top
Steffen
Moderator


Joined: 15 Oct 2005
Posts: 2580
Location: Hilversum, NL, EU

PostPosted: Mon 12 Oct '15 21:58    Post subject: http/2 requests are still showed as http/1.1. Reply with quote

In access log and mod_status http/2 requests are still showed as http/1.1.

If you want see HTTP/2 in the log:
add %H to the end of your LogFormat string where it will not break any log readers.

Is going to be fixed in the next release (already in trunk).


Last edited by Steffen on Tue 13 Oct '15 13:50; edited 1 time in total
Back to top
Steffen
Moderator


Joined: 15 Oct 2005
Posts: 2580
Location: Hilversum, NL, EU

PostPosted: Tue 13 Oct '15 12:35    Post subject: Reply with quote

Be sure that :

<IfModule http2_module>
ProtocolsHonorOrder On
Protocols h2 h2c http/1.1
</IfModule>

is placed after

LoadModule http2_module modules/mod_http2.so

I was trying h2c and the IfModule was only picked up when it is after the Loadmodule line.
Back to top
icing



Joined: 22 Sep 2015
Posts: 38
Location: M√ľnster, Germany

PostPosted: Tue 13 Oct '15 13:23    Post subject: Reply with quote

No need to place an 'IfModule' around it:

ProtocolsHonorOrder On
Protocols h2 h2c http/1.1

are both core directives and the protocols named are just strings. You could as well write:

Protocols ugga ftp agga h2 websocket spdy/3.1 http/1.1

without needing to make sure that all those modules have been loaded. Unknown/Unimplemented protocol strings will just have no effect.
Back to top
lunter



Joined: 12 May 2011
Posts: 10

PostPosted: Thu 15 Oct '15 10:42    Post subject: Reply with quote

No need to place 'ProtocolsHonorOrder On' because it is default on.

http://httpd.apache.org/docs/2.4/mod/core.html#protocolshonororder
Back to top
Jan-E



Joined: 09 Mar 2012
Posts: 794
Location: Amsterdam, NL, EU

PostPosted: Sat 17 Oct '15 23:47    Post subject: Reply with quote

Howto for people that are using Directadmin (*nix):
https://forum.directadmin.com/showthread.php?t=52133&p=267972#post267972
Back to top
nickgearls



Joined: 07 Jul 2016
Posts: 8

PostPosted: Wed 23 Aug '17 16:20    Post subject: Re: mod_http2 :: HowTo & Info & Tips Reply with quote

Any info on how to compile it with Visual Studio?
Back to top


Post new topic   Reply to topic    Apache Forum Index -> How-to's & Documentation & Tips
Page 1 of 1