운영 및 유지보수 엔진스 HTTP 요청의 압축 및 압축 해제를 위해 Nginx를 사용하는 방법

HTTP 요청의 압축 및 압축 해제를 위해 Nginx를 사용하는 방법

Aug 02, 2023 am 10:09 AM
nginx 압축 http 요청 nginx 프로그래밍

Nginx를 사용하여 HTTP 요청을 압축 및 압축 해제하는 방법

Nginx는 강력하고 유연한 고성능 웹 서버이자 역방향 프록시 서버입니다. HTTP 요청을 처리할 때 Nginx에서 제공하는 gzip 및 gunzip 모듈을 사용하여 요청을 압축 및 압축 해제하여 데이터 전송량을 줄이고 요청 응답 속도를 향상시킬 수 있습니다. 이 기사에서는 Nginx를 사용하여 HTTP 요청을 압축 및 압축 해제하는 방법에 대한 구체적인 단계를 소개하고 해당 코드 예제를 제공합니다.

  1. gzip 모듈 구성

먼저 Nginx 구성 파일에서 gzip 모듈을 활성화해야 합니다. Nginx 구성 파일(일반적으로 /etc/nginx/nginx.conf 또는 /usr/local/nginx/conf/nginx.conf에 있음)을 열고 http 블록을 찾으세요. , 다음 구성을 추가하세요. /etc/nginx/nginx.conf/usr/local/nginx/conf/nginx.conf),找到http块,添加以下配置:

http {
  gzip on;
  gzip_types text/plain text/css application/javascript;
  gzip_min_length 1024;
  gzip_comp_level 1;
}
로그인 후 복사

上述配置的含义如下:

  • gzip on; 表示启用gzip模块。
  • gzip_types 表示需要压缩的文件类型。这里我们选择了文本文件、CSS文件和JavaScript文件。你可以根据自己的需求进行配置。
  • gzip_min_length 表示只有文件长度超过这个值的文件才会进行压缩。
  • gzip_comp_level 表示压缩级别,级别越高,压缩效果越好,但占用的CPU资源也越多。
  1. 配置gunzip模块

如果你需要对接收到的请求进行解压缩,还需要启用gunzip模块。在同一个配置文件中找到http块,添加以下配置:

http {
  gunzip on;
}
로그인 후 복사
  1. 应用配置并重启Nginx

保存Nginx配置文件后,执行以下命令应用配置并重启Nginx服务:

sudo service nginx reload
로그인 후 복사

请确保你具备足够的权限。

  1. 验证压缩和解压缩

现在你已经配置好了Nginx的压缩和解压缩模块。你可以通过向Nginx发送HTTP请求来验证这些功能是否生效。

首先,使用curl工具发送一个GET请求到配置的Nginx服务:

curl -H "Accept-Encoding: gzip, deflate" -I http://localhost
로그인 후 복사

命令中的-H "Accept-Encoding: gzip, deflate"表示告诉服务器可以接受gzip或deflate的压缩方式。-I表示只获取响应头信息,而不需要获取完整的响应体。

如果一切正常,你将会在响应头中看到类似下面的信息:

Content-Encoding: gzip
로그인 후 복사

这表示服务器已经将响应体压缩成gzip格式进行传输。

接下来,你可以使用以下命令发送一个解压缩的请求:

curl --compressed -I http://localhost
로그인 후 복사

命令中的--compressed

Content-Encoding: 
로그인 후 복사
위 구성의 의미는 다음과 같습니다.

gzip on;은 gzip 모듈을 활성화한다는 의미입니다.

gzip_types는 압축해야 하는 파일 형식을 나타냅니다. 여기서는 텍스트 파일, CSS 파일 및 JavaScript 파일을 선택했습니다. 필요에 따라 구성할 수 있습니다.

gzip_min_length는 길이가 이 값을 초과하는 파일만 압축된다는 의미입니다.

gzip_comp_level은 압축 수준을 나타냅니다. 수준이 높을수록 압축 효과는 높아지지만 CPU 리소스를 더 많이 차지합니다.

    gunzip 모듈 구성
  • 수신된 요청의 압축을 풀어야 하는 경우 gunzip 모듈도 활성화해야 합니다. 동일한 구성 파일에서 http 블록을 찾아 다음 구성을 추가합니다.
  • rrreee
    1. 구성을 적용하고 Nginx를 다시 시작합니다.
    Nginx 구성 파일을 저장한 후 다음 명령을 실행하여 구성을 적용합니다. Nginx 서비스를 다시 시작하세요: 🎜 rrreee🎜충분한 권한이 있는지 확인하세요. 🎜
      🎜압축 및 압축 해제 확인🎜🎜🎜이제 Nginx의 압축 및 압축 해제 모듈을 구성했습니다. Nginx에 HTTP 요청을 보내 이러한 기능이 작동하는지 확인할 수 있습니다. 🎜🎜먼저, 컬 도구를 사용하여 구성된 Nginx 서비스에 GET 요청을 보냅니다. 🎜rrreee🎜-H 명령의 "Accept-Encoding: gzip, deflate"는 서버에 GET 요청을 할 수 있음을 알리는 것을 의미합니다. gzip을 수락하거나 압축 방법을 압축 해제하세요. -I는 전체 응답 본문을 가져오지 않고 응답 헤더 정보만 가져옴을 나타냅니다. 🎜🎜모든 것이 순조롭게 진행되면 응답 헤더에 다음과 유사한 정보가 표시됩니다. 🎜rrreee🎜이는 서버가 전송을 위해 응답 본문을 gzip 형식으로 압축했다는 의미입니다. 🎜🎜다음으로 다음 명령을 사용하여 압축 해제 요청을 보낼 수 있습니다. 🎜rrreee🎜명령의 --compressed는 수신된 응답이 압축되었으며 압축을 풀어야 함을 서버에 알립니다. 🎜🎜모든 것이 순조롭게 진행되면 응답 헤더에 다음과 유사한 정보가 표시됩니다. 🎜rrreee🎜이는 서버가 응답 본문의 압축을 풀고 원래 형식으로 전송했다는 의미입니다. 🎜🎜위 단계와 검증을 통해 HTTP 요청의 압축 및 압축 해제를 구현하도록 Nginx의 gzip 및 gunzip 모듈을 성공적으로 구성했습니다. 🎜🎜요약🎜🎜이 글에서는 Nginx를 사용하여 HTTP 요청을 압축 및 압축 해제하는 방법을 소개하고 관련 구성 및 명령 예제를 제공합니다. Nginx의 gzip 및 gunzip 모듈을 사용하면 데이터 전송량을 줄이고 요청 응답 속도를 향상시키는 데 도움이 될 수 있습니다. 적절한 구성과 사용을 통해 웹 애플리케이션의 성능과 사용자 경험을 향상시킬 수 있습니다. 사용 중 문제가 발생하면 Nginx 공식 문서를 참조하거나 도움을 요청할 수 있습니다. 이 글의 내용이 여러분에게 도움이 되기를 바랍니다! 🎜🎜참조 링크: 🎜🎜🎜Nginx 공식 문서: http://nginx.org/en/docs/🎜🎜Gzip 모듈 구성 가이드: https://nginx.org/en/docs/http/ngx_http_gzip_module.html🎜🎜 Gunzip 모듈 구성 가이드: https://nginx.org/en/docs/http/ngx_http_gunzip_module.html🎜🎜

    위 내용은 HTTP 요청의 압축 및 압축 해제를 위해 Nginx를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

    핫 AI 도구

    Undresser.AI Undress

    Undresser.AI Undress

    사실적인 누드 사진을 만들기 위한 AI 기반 앱

    AI Clothes Remover

    AI Clothes Remover

    사진에서 옷을 제거하는 온라인 AI 도구입니다.

    Undress AI Tool

    Undress AI Tool

    무료로 이미지를 벗다

    Clothoff.io

    Clothoff.io

    AI 옷 제거제

    AI Hentai Generator

    AI Hentai Generator

    AI Hentai를 무료로 생성하십시오.

    인기 기사

    R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
    3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. 최고의 그래픽 설정
    3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
    3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
    WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
    4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

    뜨거운 도구

    메모장++7.3.1

    메모장++7.3.1

    사용하기 쉬운 무료 코드 편집기

    SublimeText3 중국어 버전

    SublimeText3 중국어 버전

    중국어 버전, 사용하기 매우 쉽습니다.

    스튜디오 13.0.1 보내기

    스튜디오 13.0.1 보내기

    강력한 PHP 통합 개발 환경

    드림위버 CS6

    드림위버 CS6

    시각적 웹 개발 도구

    SublimeText3 Mac 버전

    SublimeText3 Mac 버전

    신 수준의 코드 편집 소프트웨어(SublimeText3)

    Tomcat 서버에 대한 외부 네트워크 액세스를 허용하는 방법 Tomcat 서버에 대한 외부 네트워크 액세스를 허용하는 방법 Apr 21, 2024 am 07:22 AM

    Tomcat 서버가 외부 네트워크에 액세스하도록 허용하려면 다음을 수행해야 합니다. 외부 연결을 허용하도록 Tomcat 구성 파일을 수정합니다. Tomcat 서버 포트에 대한 액세스를 허용하는 방화벽 규칙을 추가합니다. Tomcat 서버 공용 IP에 대한 도메인 이름을 가리키는 DNS 레코드를 만듭니다. 선택 사항: 역방향 프록시를 사용하여 보안 및 성능을 향상합니다. 선택 사항: 보안 강화를 위해 HTTPS를 설정합니다.

    7-zip 최대 압축률 설정, 7zip을 최소로 압축하는 방법 7-zip 최대 압축률 설정, 7zip을 최소로 압축하는 방법 Jun 18, 2024 pm 06:12 PM

    특정 다운로드 사이트에서 다운로드한 압축 패키지는 압축을 푼 후 원본 압축 패키지보다 용량이 더 커지는 것을 확인했습니다. 그 차이는 수십 Kb, 수십 Mb 정도입니다. 클라우드 디스크나 유료 공간에 업로드해도 상관없습니다. 파일이 작을 경우, 파일이 많을 경우 저장 비용이 크게 증가합니다. 나는 그것에 대해 약간의 조사를 했으며 필요하다면 배울 수 있습니다. 압축 수준: 9급 압축 사전 크기: 256 또는 384, 사전을 많이 압축할수록 속도가 느려집니다. 256MB 이전에는 압축률 차이가 더 크고, 384MB 이후에는 압축률 차이가 없습니다. 단어 크기: 최대 273 매개변수: f=BCJ2, 테스트 및 추가 매개변수 압축률이 높아집니다.

    Golang을 사용하여 HTTP 요청에 대한 쿼리 매개변수 설정 Golang을 사용하여 HTTP 요청에 대한 쿼리 매개변수 설정 Jun 02, 2024 pm 03:27 PM

    Go에서 HTTP 요청에 대한 쿼리 매개변수를 설정하려면 쿼리 매개변수 이름과 값을 매개변수로 받아들이는 http.Request.URL.Query().Set() 메서드를 사용할 수 있습니다. 구체적인 단계는 다음과 같습니다. 새 HTTP 요청을 만듭니다. 쿼리 매개변수를 설정하려면 Query().Set() 메서드를 사용하세요. 요청을 인코딩합니다. 요청을 실행합니다. 쿼리 매개변수의 값을 가져옵니다(선택사항). 쿼리 매개변수를 제거합니다(선택사항).

    HTML 파일에서 URL을 생성하는 방법 HTML 파일에서 URL을 생성하는 방법 Apr 21, 2024 pm 12:57 PM

    HTML 파일을 URL로 변환하려면 다음 단계를 포함하는 웹 서버가 필요합니다. 웹 서버를 얻습니다. 웹 서버를 설정합니다. HTML 파일을 업로드하세요. 도메인 이름을 만듭니다. 요청을 라우팅합니다.

    nodejs 프로젝트를 서버에 배포하는 방법 nodejs 프로젝트를 서버에 배포하는 방법 Apr 21, 2024 am 04:40 AM

    Node.js 프로젝트의 서버 배포 단계: 배포 환경 준비: 서버 액세스 권한 획득, Node.js 설치, Git 저장소 설정. 애플리케이션 빌드: npm run build를 사용하여 배포 가능한 코드와 종속성을 생성합니다. Git 또는 파일 전송 프로토콜을 통해 서버에 코드를 업로드합니다. 종속성 설치: SSH를 서버에 연결하고 npm install을 사용하여 애플리케이션 종속성을 설치합니다. 애플리케이션 시작: node index.js와 같은 명령을 사용하여 애플리케이션을 시작하거나 pm2와 같은 프로세스 관리자를 사용합니다. 역방향 프록시 구성(선택 사항): Nginx 또는 Apache와 같은 역방향 프록시를 사용하여 트래픽을 애플리케이션으로 라우팅합니다.

    nodejs를 외부에서 접근할 수 있나요? nodejs를 외부에서 접근할 수 있나요? Apr 21, 2024 am 04:43 AM

    예, Node.js는 외부에서 액세스할 수 있습니다. 다음 방법을 사용할 수 있습니다. Cloud Functions를 사용하여 함수를 배포하고 공개적으로 액세스할 수 있도록 합니다. Express 프레임워크를 사용하여 경로를 만들고 끝점을 정의합니다. Nginx를 사용하여 Node.js 애플리케이션에 대한 프록시 요청을 역방향으로 수행합니다. Docker 컨테이너를 사용하여 Node.js 애플리케이션을 실행하고 포트 매핑을 통해 노출합니다.

    PHP를 사용하여 웹사이트를 배포하고 유지하는 방법 PHP를 사용하여 웹사이트를 배포하고 유지하는 방법 May 03, 2024 am 08:54 AM

    PHP 웹 사이트를 성공적으로 배포하고 유지하려면 다음 단계를 수행해야 합니다. 웹 서버(예: Apache 또는 Nginx) 선택 PHP 설치 데이터베이스 생성 및 PHP 연결 서버에 코드 업로드 도메인 이름 및 DNS 모니터링 웹 사이트 유지 관리 설정 단계에는 PHP 및 웹 서버 업데이트, 웹 사이트 백업, 오류 로그 모니터링 및 콘텐츠 업데이트가 포함됩니다.

    Fail2Ban을 사용하여 무차별 대입 공격으로부터 서버를 보호하는 방법 Fail2Ban을 사용하여 무차별 대입 공격으로부터 서버를 보호하는 방법 Apr 27, 2024 am 08:34 AM

    Linux 관리자의 중요한 작업은 불법적인 공격이나 액세스로부터 서버를 보호하는 것입니다. 기본적으로 Linux 시스템에는 iptables, UFW(Uncomplicated Firewall), CSF(ConfigServerSecurityFirewall) 등과 같이 잘 구성된 방화벽이 함께 제공되어 다양한 공격을 방지할 수 있습니다. 인터넷에 연결된 모든 컴퓨터는 악의적인 공격의 잠재적인 대상입니다. 서버에 대한 불법 액세스를 완화하는 데 사용할 수 있는 Fail2Ban이라는 도구가 있습니다. Fail2Ban이란 무엇입니까? Fail2Ban[1]은 무차별 공격으로부터 서버를 보호하는 침입 방지 소프트웨어입니다. Python 프로그래밍 언어로 작성되었습니다.

    See all articles