목차
nginx 보안 구성 : index.php 파일에 대한 액세스 만 허용됩니다.
시나리오 및 요구 사항
구성 계획
백엔드 개발 PHP 튜토리얼 nginx에서 index.php 파일에 대한 액세스 만 허용하는 방법은 무엇입니까?

nginx에서 index.php 파일에 대한 액세스 만 허용하는 방법은 무엇입니까?

Apr 01, 2025 am 07:57 AM
css nginx

nginx에서 index.php 파일에 대한 액세스 만 허용하는 방법은 무엇입니까?

nginx 보안 구성 : index.php 파일에 대한 액세스 만 허용됩니다.

이 기사에서는 nginx를 구성하고 index.php 파일에만 액세스 할 수있는 방법에 대해 설명하고 다른 모든 파일 또는 특정 PHP 파일에 대한 액세스를 거부합니다. 이는 서버 보안을 향상시키고 무단 액세스를 방지합니다.

시나리오 및 요구 사항

서버 디렉토리에 여러 PHP 파일 (예 : index.phptest.php )이 있다고 가정하면 index.php 만 액세스 할 수 있고 기타 PHP 파일 및 기타 리소스가 차단되어 있는지 확인해야합니다.

구성 계획

우리는 다양한 요구를 충족시키기 위해 두 가지 구성 솔루션을 제공 할 것입니다.

체계 1 : /index.php 에 대한 액세스 만 허용되며 다른 모든 요청이 거부됩니다.

이 솔루션은 가장 엄격하며 /index.php 제외한 다른 요청이 거부됩니다. 이는 안전 요구 사항이 매우 높은 시나리오에 적합합니다.

 서버 {
    80;
    Server_Name 192.168.16.86;
    루트/홈/wwwroot/웹;

    enable-php.conf 포함;

    위치 = /index.php {
        # Process Index.php 요청 try_files $ uri $ uri / / index.php?$ query_string;
    }

    위치 / {
        모든 것을 거부합니다.
    }

    # ... 다른 위치 블록 (예 : 정적 리소스 처리)을 필요에 따라 유지하거나 제거 할 수 있습니다 ...
}
로그인 후 복사

솔루션 2 : /index.php 및 정적 리소스에 액세스 허용하고 다른 PHP 파일을 거부하십시오.

이 솔루션을 사용하면 정적 자원 (예 : 그림, CSS, JS 등)에 액세스 할 수 있으며 index.php 에만 액세스 할 수 있으며 다른 PHP 파일에 대한 액세스가 거부됩니다. 이것은 실제 응용 분야에서 더 일반적입니다.

 서버 {
    80;
    Server_Name 192.168.16.86;
    루트/홈/wwwroot/웹;

    enable-php.conf 포함;

    위치 / {
        # 정적 자원 요청 처리 try_files $ uri $ uri/ = 404;
    }

    위치 ~ \ .php $ {
        모든 것을 거부합니다.
    }

    위치 = /index.php {
        # Process Index.php 요청 try_files $ uri $ uri / / index.php?$ query_string;
    }

    # ... 다른 위치 블록 (예 : 정적 자원 캐시)은 필요에 따라 유지되거나 조정될 수 있습니다 ...

}
로그인 후 복사

구성 지침 :

  • location = /index.php : /index.php 경로와 정확히 일치하고 파일에 대한 요청 만 처리합니다.
  • location ~ \.php$ : .php 에서 끝나는 모든 파일과 일치하는 정규 표현식을 사용하십시오.
  • deny all : 모든 요청은 거부됩니다.
  • try_files : 파일이나 디렉토리를 찾아서 찾을 수없는 경우 후속 작업을 수행하십시오.

선택한 옵션은 특정 보안 요구에 따라 다릅니다. 솔루션 1은 더 안전하지만 제한은 더 엄격합니다. 솔루션 2는 보안 및 기능입니다. 실제 상황에 따라 구성을 선택하고 조정하십시오. 구성을 테스트하여 기대치를 충족하는지 확인하십시오. 안전한 구성은 신중해야하며 생산 환경에 적용하기 전에 테스트 환경에서 테스트하는 것이 좋습니다.

위 내용은 nginx에서 index.php 파일에 대한 액세스 만 허용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 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 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

<gum> : Bubble Gum Simulator Infinity- 로얄 키를 얻고 사용하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
Nordhold : Fusion System, 설명
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora : 마녀 트리의 속삭임 - Grappling Hook 잠금 해제 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

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

SublimeText3 중국어 버전

SublimeText3 중국어 버전

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

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

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

HTML : 구조, CSS : 스타일, 자바 스크립트 : 동작 HTML : 구조, CSS : 스타일, 자바 스크립트 : 동작 Apr 18, 2025 am 12:09 AM

웹 개발에서 HTML, CSS 및 JavaScript의 역할은 다음과 같습니다. 1. HTML은 웹 페이지 구조를 정의하고, 2. CSS는 웹 페이지 스타일을 제어하고 3. JavaScript는 동적 동작을 추가합니다. 그들은 함께 현대 웹 사이트의 프레임 워크, 미학 및 상호 작용을 구축합니다.

Docker가 컨테이너를 시작하는 방법 Docker가 컨테이너를 시작하는 방법 Apr 15, 2025 pm 12:27 PM

Docker Container Startup 단계 : 컨테이너 이미지를 당기기 : "Docker Pull [Mirror Name]"을 실행하십시오. 컨테이너 생성 : "docker"[옵션] [미러 이름] [명령 및 매개 변수]를 사용하십시오. 컨테이너를 시작하십시오 : "Docker start [컨테이너 이름 또는 ID]"를 실행하십시오. 컨테이너 상태 확인 : 컨테이너가 "Docker PS"로 실행 중인지 확인하십시오.

Docker 컨테이너의 이름을 확인하는 방법 Docker 컨테이너의 이름을 확인하는 방법 Apr 15, 2025 pm 12:21 PM

단계를 따르면 Docker 컨테이너 이름을 쿼리 할 수 ​​있습니다. 모든 컨테이너 (Docker PS)를 나열하십시오. 컨테이너 목록을 필터링합니다 (GREP 명령 사용). 컨테이너 이름 ( "이름"열에 위치)을 가져옵니다.

CRAFT CMS의 캐싱 문제 해결 : Wiejeben/Craft-Laravel-Mix 플러그인 사용 CRAFT CMS의 캐싱 문제 해결 : Wiejeben/Craft-Laravel-Mix 플러그인 사용 Apr 18, 2025 am 09:24 AM

CRAFTCMS를 사용하여 웹 사이트를 개발할 때 특히 CSS 및 JavaScript 파일을 자주 업데이트 할 때 자주 리소스 파일 캐싱 문제가 발생하면 이전 버전의 파일이 여전히 브라우저에서 캐싱 될 수 있으므로 사용자는 최신 변경 사항을 볼 수 없습니다. 이 문제는 사용자 경험에 영향을 줄뿐만 아니라 개발 및 디버깅의 어려움을 증가시킵니다. 최근에 나는 프로젝트에서 비슷한 문제를 겪었고, 약간의 탐색 후 플러그인 Wiejeben/Craft-Laravel-Mix를 발견하여 캐싱 문제를 완벽하게 해결했습니다.

Docker 용 컨테이너를 만드는 방법 Docker 용 컨테이너를 만드는 방법 Apr 15, 2025 pm 12:18 PM

Docker에서 컨테이너 만들기 : 1. 이미지를 당기기 : Docker Pull [Mirror Name] 2. 컨테이너 만들기 : Docker Run [옵션] [미러 이름] [명령] 3. 컨테이너 시작 : Docker Start [컨테이너 이름]

웹 사이트 성능을 최적화하는 방법 : 미니 라이브러리 사용에서 배운 경험 및 교훈 웹 사이트 성능을 최적화하는 방법 : 미니 라이브러리 사용에서 배운 경험 및 교훈 Apr 17, 2025 pm 11:18 PM

웹 사이트를 개발하는 과정에서 페이지 로딩을 개선하는 것은 항상 최우선 과제 중 하나였습니다. 일단 웹 사이트의 성능을 향상시키기 위해 CSS 및 JavaScript 파일을 압축하고 병합하기 위해 Miniify 라이브러리를 사용해 보았습니다. 그러나 사용 중에 많은 문제와 도전에 직면하여 결국 Miniify가 더 이상 최선의 선택이 아닐 수도 있음을 깨달았습니다. 아래에서는 내 경험과 작곡가를 통해 미수를 설치하고 사용하는 방법을 공유 할 것입니다.

HTML vs. CSS 및 JavaScript : 웹 기술 비교 HTML vs. CSS 및 JavaScript : 웹 기술 비교 Apr 23, 2025 am 12:05 AM

HTML, CSS 및 JavaScript는 최신 웹 페이지를 구축하기위한 핵심 기술입니다. 1. HTML 웹 페이지 구조를 정의합니다. 2. CSS는 웹 페이지의 모양을 담당합니다.

숭고한 HTML을 생성하는 방법 숭고한 HTML을 생성하는 방법 Apr 16, 2025 am 09:03 AM

숭고한 텍스트에는 HTML 코드를 생성하는 두 가지 방법이 있습니다. Emmet 플러그인을 사용하면 약어를 입력하고 탭 키를 눌러 HTML 요소를 생성하거나 기본 HTML 구조 및 코드 스 니펫, 자동 불완전 기능 및 EMMET 스 니펫과 같은 기타 기능을 제공하는 사전 정의 된 HTML 파일 템플릿을 사용할 수 있습니다.

See all articles