찾다
운영 및 유지보수엔진스Nginx 역방향 프록시의 장치 및 브라우저 지문을 기반으로 한 ACL 구성

모바일 인터넷과 다중단말기의 대중화로 인해 웹사이트 접속 방식과 기기 종류가 점점 다양해지고 있습니다. 웹사이트의 안정성과 보안을 보장하기 위해 웹사이트 서버는 역방향 프록시를 수행해야 하며 다양한 장치 및 브라우저 유형을 제한해야 합니다. 이를 위해서는 Nginx 역방향 프록시의 장치 및 브라우저 지문을 기반으로 하는 ACL 구성을 사용해야 합니다. .

Nginx 리버스 프록시란 무엇인가요?

Nginx 리버스 프록시는 서버가 다른 서버 리소스에 액세스하기 위한 클라이언트 역할을 하는 프록시 방법입니다. 간단히 말하면 클라이언트와 서버 사이에 프록시 서버가 추가되고, 클라이언트는 프록시 서버에 리소스를 요청하고, 프록시 서버는 실제 서버에 리소스를 요청한 후 요청 결과를 클라이언트에 반환합니다. 이 방법은 서버에 대한 부담을 효과적으로 줄이고 웹사이트의 성능과 안정성을 향상시킬 수 있습니다.

Nginx 역방향 프록시의 ACL 구성

ACL(Access Control List, Access Control List)은 Nginx 역방향 프록시의 기능으로, Nginx 역방향 프록시에서 요청한 IP 주소, 요청 방법, URL 및 기타 조건을 기반으로 작업을 수행하는 데 사용됩니다. 클라이언트를 필터링하고 제한합니다. ACL에서는 장치 유형 및 브라우저 유형에 따라 제한할 수도 있습니다.

다양한 장치와 브라우저 유형의 렌더링 방법과 사양이 다르기 때문에 당사는 이러한 특성에 따라 다양한 페이지 구조, 스타일 또는 리소스를 제공하는 등 다양한 대응을 할 수 있습니다. 동시에 ACL 구성을 통해 특정 장치나 브라우저의 요청을 제한하여 웹사이트의 보안과 안정성을 향상시킬 수도 있습니다.

기기 및 브라우저 지문을 기반으로 한 ACL 구성

현재 기기와 브라우저의 종류가 너무 많아서 하나씩 수동으로 구성하는 것은 확실히 비현실적입니다. 그러나 다행스럽게도 Nginx 역방향 프록시는 장치 및 브라우저 유형을 자동으로 식별할 수 있는 타사 모듈 deviceatlas를 제공합니다.

deviceatlas 모듈 설치

CentOS를 예로 들어 먼저 필요한 종속성을 설치합니다.

sudo yum install gcc-c++ pcre-devel zlib-devel

그런 다음 deviceatlas 모듈을 다운로드하고 압축을 풀고 설치를 실행합니다.

sudo wget -O ~/deviceatlas.tar.gz https://github.com/deviceDetection/device-nginx/archive/master.tar.gz
sudo tar zxvf ~/deviceatlas.tar.gz -C ~/
cd ~ /device-nginx -master
sudo ./configure --add-module=$PWD
sudo make && sudo make install

위 단계 후에 Nginx에서 deviceatlas 모듈을 사용할 수 있습니다.

Nginx 역방향 프록시 구성

Nginx 구성 파일에 다음 구성을 추가합니다.

http {

deviceatlas /usr/share/devicedata/51Degrees.dat;

map $device_is_mobile $acl {
    ""               block_ua;
    "true"           allow;
    "false"          block_ua;
}

map $device_brand_name $brand_map {
     "~Huawei"       "huawei.com";
     "~Samsung"      "samsung.com";
     "~Apple"        "apple.com";
     default         "default.com"
}

server {
    listen       80;
    server_name  server.com;

    location / {
        if ($acl = "allow") {
            proxy_pass http://backend;
        }
        if ($acl = "block_ua") {
            return 403;
        }
    }

    location /brand {
        proxy_pass http://$brand_map;
    }
}

}

위 구성을 구문 분석합니다.

먼저 deviceatlas 모듈을 사용하여 장치 정보 파일을 로드합니다.

장치는 "모바일"과 "비모바일"로 분류됩니다. 장치가 분류된 후에는 다양한 장치 유형에 따라 쉽게 다른 응답을 할 수 있습니다. 장치 브랜드 이름은 해당 백엔드 서버 도메인 이름에 매핑됩니다.

Nginx 역방향 프록시 서버에서 위치 지시문을 사용하여 현재 요청이 모바일 장치에서 오는 경우 프록시 요청입니다. 현재 요청이 알 수 없는 장치에서 오는 경우 허용됩니다. 모바일 장치의 경우 프록시 요청이 허용되지 않습니다.

지정된 URL을 요청할 때 요청이 모바일 장치에서 나오고 브랜드가 Huawei, Samsung 또는 Apple의 경우 요청은 해당 서버로 프록시됩니다. 그렇지 않은 경우 요청이 알 수 없는 장치 또는 비-모바일 장치 또는 브랜드가 항목과 일치하지 않는 경우 요청은 기본 서버로 프록시됩니다.

요약

장치 및 브라우저 지문을 기반으로 한 ACL 구성은 Nginx 역방향 프록시 서버가 다양한 액세스 장치 및 다양한 액세스 방법을 필터링하고 응답하는 데 도움이 될 수 있습니다. Nginx 리버스 프록시 서버는 deviceatlas 모듈을 사용하여 장치 브랜드, 모델 및 브라우저 유형을 자동으로 식별하고 특정 조건에 따라 해당 ACL 구성을 만들어 웹 사이트의 성능, 보안 및 안정성을 향상시킬 수 있습니다.

위 내용은 Nginx 역방향 프록시의 장치 및 브라우저 지문을 기반으로 한 ACL 구성의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

Nginx를 통해 웹 사이트 보안을 보장하려면 다음 단계가 필요합니다. 1. 기본 구성을 만들고 SSL 인증서 및 개인 키를 지정하십시오. 2. 구성 최적화, HTTP/2 및 OCSPStapling 활성화; 3. 인증서 경로 및 암호화 제품군 문제와 같은 공통 오류 디버그; 4. Let 'sencrypt 및 세션 멀티플렉싱 사용과 같은 응용 프로그램 성능 최적화 제안.

Nginx 인터뷰 질문 : ACE 귀하의 DevOps/System Admin 인터뷰Nginx 인터뷰 질문 : ACE 귀하의 DevOps/System Admin 인터뷰Apr 09, 2025 am 12:14 AM

NGINX는 고성능 HTTP 및 리버스 프록시 서버로 높은 동시 연결을 처리하는 데 능숙합니다. 1) 기본 구성 : 포트를 듣고 정적 파일 서비스를 제공합니다. 2) 고급 구성 : 리버스 프록시 및로드 밸런싱을 구현하십시오. 3) 디버깅 기술 : 오류 로그를 확인하고 구성 파일을 테스트하십시오. 4) 성능 최적화 : GZIP 압축을 활성화하고 캐시 정책을 조정합니다.

Nginx 캐싱 기술 : 웹 사이트 성능 향상Nginx 캐싱 기술 : 웹 사이트 성능 향상Apr 08, 2025 am 12:18 AM

Nginx 캐시는 다음 단계를 통해 웹 사이트 성능을 크게 향상시킬 수 있습니다. 1) 캐시 영역을 정의하고 캐시 경로를 설정하십시오. 2) 캐시 유효성 기간 구성; 3) 다른 컨텐츠에 따라 다른 캐시 정책을 설정합니다. 4) 캐시 저장 및로드 밸런싱을 최적화합니다. 5) 캐시 효과를 모니터링하고 디버그합니다. 이러한 방법을 통해 NGINX 캐시는 백엔드 서버 압력을 줄이고 응답 속도 및 사용자 경험을 향상시킬 수 있습니다.

Docker와 Nginx : 컨테이너화 된 응용 프로그램을 배포하고 스케일링합니다Docker와 Nginx : 컨테이너화 된 응용 프로그램을 배포하고 스케일링합니다Apr 07, 2025 am 12:08 AM

dockercompose를 사용하면 Nginx의 배포 및 관리를 단순화 할 수 있으며 Dockerswarm 또는 Kubernetes를 통한 스케일링은 일반적인 관행입니다. 1) DockerCompose를 사용하여 Nginx 컨테이너를 정의하고 실행하십시오. 2) Dockerswarm 또는 Kubernetes를 통한 클러스터 관리 및 자동 스케일링 구현.

고급 NGINX 구성 : 서버 블록 마스터 링 및 리버스 프록시고급 NGINX 구성 : 서버 블록 마스터 링 및 리버스 프록시Apr 06, 2025 am 12:05 AM

NGINX의 고급 구성은 서버 블록 및 리버스 프록시를 통해 구현 될 수 있습니다. 1. 서버 블록을 사용하면 여러 웹 사이트를 한쪽으로 실행할 수있게되면 각 블록은 독립적으로 구성됩니다. 2. 리버스 프록시는 요청을 백엔드 서버로 전달하여로드 밸런싱 및 캐시 가속도를 실현합니다.

Nginx 성능 튜닝 : 속도 및 낮은 대기 시간을 최적화합니다Nginx 성능 튜닝 : 속도 및 낮은 대기 시간을 최적화합니다Apr 05, 2025 am 12:08 AM

작업자 프로세스 수, 연결 풀 크기, GZIP 압축 및 HTTP/2 프로토콜을 활성화하고 캐시 및로드 밸런싱을 사용하여 NGINX 성능 튜닝을 달성 할 수 있습니다. 1. 작업자 프로세스 수 및 연결 풀 크기 조정 : Worker_ProcessesAuto; 이벤트 {worker_connections1024;}. 2. GZIP 압축 및 HTTP/2 프로토콜 활성화 : http {gzipon; server {listen443sslhttp2;}}. 3. 캐시 최적화 사용 : http {proxy_cache_path/path/to/cachelevels = 1 : 2k

Nginx 보안 경화 : 웹 서버를 공격으로부터 보호합니다Nginx 보안 경화 : 웹 서버를 공격으로부터 보호합니다Apr 04, 2025 am 12:06 AM

NGINX 보안 향상은 다음 단계를 통해 달성 할 수 있습니다. 1) 모든 트래픽이 HTTPS를 통해 전송되도록 보장, 2) HTTP 헤더 구성을 구성하여 통신 보안을 향상시키기 위해 3) SSL/TLS 암호화 데이터 전송 설정, 4) 악성 트래픽을 방지하기위한 액세스 제어 및 속도 제한을 구현합니다. 이러한 조치는 NGINX 서버의 보안을 효과적으로 향상시킬 수 있습니다.

NGINX로드 밸런싱 : 고 가용성 및 확장 성 구성NGINX로드 밸런싱 : 고 가용성 및 확장 성 구성Apr 03, 2025 am 12:12 AM

Nginx는로드 밸런싱을 구성하여 고 가용성과 확장 성을 달성 할 수 있습니다. 1) 업스트림 서버 그룹 정의, 2) 폴링, 가중 폴링, 최소 연결 또는 IP 해싱과 같은 적절한로드 밸런싱 알고리즘을 선택하십시오.

See all articles

핫 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에서 모든 것을 잠금 해제하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

안전한 시험 브라우저

안전한 시험 브라우저

안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

SublimeText3 Mac 버전

SublimeText3 Mac 버전

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

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

메모장++7.3.1

메모장++7.3.1

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