>  기사  >  운영 및 유지보수  >  Nginx를 사용하여 HTTP/2 프로토콜 지원을 구현하는 방법

Nginx를 사용하여 HTTP/2 프로토콜 지원을 구현하는 방법

WBOY
WBOY원래의
2023-08-03 17:40:531535검색

Nginx를 사용하여 HTTP/2 프로토콜 지원을 구현하는 방법

개요:
HTTP/2는 이전 HTTP/1.x 프로토콜과 비교하여 성능과 효율성이 크게 향상되었습니다. HTTP/2 프로토콜을 지원하기 위해 Nginx를 HTTP 서버로 사용하고 해당 설정을 구성할 수 있습니다.

Nginx 설치 및 구성:
먼저 Nginx를 설치해야 합니다. 다음 명령을 통해 Ubuntu 시스템에 설치할 수 있습니다.

sudo apt-get update
sudo apt-get install nginx

설치가 완료된 후 HTTP/2 프로토콜을 지원하도록 Nginx를 구성해야 합니다.

sudo nano /etc/nginx/nginx.conf

에서 찾을 수 있는 Nginx의 구성 파일을 엽니다. 서버 블록에서 Listen 지시어를 찾아 아래와 같이 http2를 매개변수로 추가합니다. http2作为参数,如下所示:

server {
    listen 443 ssl http2;
    ...
}

注意,这里假设您的网站使用了SSL证书且使用默认的443端口。如果您的网站没有启用SSL或使用不同的端口,请相应地调整配置。

保存并关闭文件后,重新启动Nginx以使更改生效:

sudo systemctl restart nginx

配置SSL证书:
为了使用HTTP/2协议,我们需要配置SSL证书。在此示例中,我们将使用自签名证书。在生产环境中,应使用受信任的证书颁发机构签名的证书。

首先,创建一个用于存储SSL证书的目录:

sudo mkdir /etc/nginx/ssl

然后,生成私钥和证书请求:

sudo openssl req -new -newkey rsa:2048 -nodes -keyout /etc/nginx/ssl/nginx.key -out /etc/nginx/ssl/nginx.csr

按照提示进行相关信息的填写,例如国家码、组织名称等。

接下来,自签名证书:

sudo openssl x509 -req -days 365 -in /etc/nginx/ssl/nginx.csr -signkey /etc/nginx/ssl/nginx.key -out /etc/nginx/ssl/nginx.crt

配置Nginx以使用SSL证书。打开Nginx的配置文件,并找到以下行:

server {
    ...
    # SSL configuration
    #
    # listen 443 ssl default_server;
    # listen [::]:443 ssl default_server;
    ...
}

取消注释listen

server {
    ...
    # SSL configuration
    #
    listen 443 ssl http2;
    ssl_certificate /etc/nginx/ssl/nginx.crt;
    ssl_certificate_key /etc/nginx/ssl/nginx.key;
    ...
}

참고, 이는 귀하의 웹사이트가 SSL 인증서가 사용되며 기본 포트 443이 사용됩니다. 웹사이트에 SSL이 활성화되어 있지 않거나 다른 포트를 사용하는 경우 그에 따라 구성을 조정하십시오.

파일을 저장하고 닫은 후 변경 사항을 적용하려면 Nginx를 다시 시작하세요.

server {
    listen 443 ssl http2;
    server_name example.com;

    ssl_certificate /etc/nginx/ssl/nginx.crt;
    ssl_certificate_key /etc/nginx/ssl/nginx.key;

    location / {
        root /var/www/html;
        index index.html;
    }
}

SSL 인증서 구성:

HTTP/2 프로토콜을 사용하려면 SSL 인증서를 구성해야 합니다. 이 예에서는 자체 서명된 인증서를 사용합니다. 프로덕션 환경에서는 신뢰할 수 있는 인증 기관에서 서명한 인증서를 사용해야 합니다.


먼저 SSL 인증서를 저장할 디렉터리를 만듭니다:

rrreee

그런 다음 개인 키와 인증서 요청을 생성합니다:
rrreee

프롬프트에 따라 국가 코드, 조직 이름 등과 같은 관련 정보를 입력합니다.

다음으로 자체 서명된 인증서: 🎜rrreee🎜 SSL 인증서를 사용하도록 Nginx를 구성합니다. Nginx 구성 파일을 열고 다음 줄을 찾습니다. 🎜rrreee🎜 listen 지시문의 주석 처리를 해제하고 SSL 인증서 경로와 개인 키 경로를 추가합니다. 🎜rrreee🎜파일을 저장하고 닫은 후 , 변경 사항을 적용하려면 Nginx를 다시 시작하세요. 🎜🎜HTTP/2 프로토콜 지원 테스트: 🎜HTTP/2 프로토콜이 성공적으로 활성화되었는지 확인하려면 브라우저를 열고 웹사이트를 방문하세요. 브라우저의 개발자 도구에서 네트워크 탭을 보면 요청된 프로토콜이 HTTP/2임을 확인할 수 있습니다. 🎜🎜코드 예: 🎜다음은 HTTP/2 프로토콜에 대한 지원을 포함하는 간단한 Nginx 구성 예입니다. 🎜rrreee🎜결론: 🎜Nginx 구성을 사용하여 HTTP/2 프로토콜을 지원하면 성능과 효율성을 향상시킬 수 있습니다. 웹 사이트. 이 문서의 단계를 따르면 웹 사이트에서 HTTP/2 프로토콜에 대한 지원을 쉽게 구현할 수 있습니다. 🎜🎜위 내용은 Nginx를 사용하여 HTTP/2 프로토콜 지원을 구현하는 방법에 대한 소개 및 샘플 코드입니다. 🎜

위 내용은 Nginx를 사용하여 HTTP/2 프로토콜 지원을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.