HTTP 2.0, 즉 하이퍼텍스트 전송 프로토콜 2.0은 차세대 HTTP 프로토콜입니다. IETF(Internet Engineering Task Force)의 httpbis(Hypertext Transfer Protocol Bis) 작업 그룹에서 개발했습니다. 이는 1999년 http1.1이 출시된 이후 첫 번째 업데이트다.
SPDY에서 발전한 HTTP/2 프로토콜은 임무를 완료했으며 곧 역사의 무대에서 물러날 예정입니다. 예를 들어 Chrome은 2016년 초에 SPDY에 대한 지원을 종료하고 Apache도 HTTP/2를 완전히 지원합니다. , SPDY는 더 이상 지원되지 않습니다).
일반적으로 모든 사람은 HTTP2를 h2로 축약합니다. 비록 일부 친구는 그렇게 하려고 하지 않을 수도 있지만, 특히 브라우저가 HTTP2에 대해 이 약어를 사용하기 때문에 이 약어가 기본값이 되었습니다.
1: nginx 설치
http2에는 SSL 지원이 필요하며, 필요한 소프트웨어 패키지는 다음과 같습니다.
nginx-1.9.12.tar.gz
openssl- 1.0.1s.tar.gz
pcre-8.38.zip
zlib-1.2.8.tar.gz
기본 컴파일된 nginx에는 http2 모듈이 포함되어 있지 않습니다. 따라서 nginx를 컴파일할 때 최소한 http_v2_module 및 http_ssl_module 두 모듈을 활성화해야 합니다.
./configure --prefix=/usr/local/nginx --with-zlib=/tmp/2/zlib-1.2.8 --with-pcre=/tmp/2/pcre-8.38 --with-http_v2_module --with-http_ssl_module --with-openssl=/tmp/2/openssl-1.0.1s
then
make
make install
두 번째: openssl을 사용하여 SSL 인증서 생성
참조: http:// /blog.csdn.net/mn960mn/article/details/42374597
3: nginx 구성
server { listen 443 ssl http2; server_name http2.yuni.com; ssl_certificate /usr/local/nginx/ssl/server.crt; ssl_certificate_key /usr/local/nginx/ssl/server.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers off; location / { root html; index index.html index.htm; } }
넷째 : 테스트
최신 버전의 크롬과 파이어폭스 브라우저를 사용하는 것이 가장 좋습니다. 저는 여기서 크롬 v49를 사용합니다
로컬 호스트에서 http2.yuni.com을 가리켜도록 구성합니다. nginx IP 주소로
그런 다음 https://http2.yuni.com을 방문하세요. 참고, nginx의 access.log 로그를 보려면 반드시 https
를 사용하세요
위 내용은 관련 내용을 포함하여 nginx http2 구성을 소개한 내용이므로 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.