>백엔드 개발 >PHP 튜토리얼 >URI 접두사가 다른 하위 폴더에 대해 Nginx 위치 블록을 구성하는 방법은 무엇입니까?

URI 접두사가 다른 하위 폴더에 대해 Nginx 위치 블록을 구성하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-25 13:35:13641검색

How to Configure Nginx Location Blocks for Subfolders with Different URI Prefixes?

하위 폴더에 대한 Nginx 위치 구성

Nginx 서버 구성을 사용하면 URI 패턴을 기반으로 요청을 특정 위치로 라우팅할 수 있습니다. 이 질문은 다른 URI 접두사를 사용하여 지정된 경로, 특히 /static 및 /manage 내의 하위 폴더에 액세스하도록 Nginx를 구성하는 방법을 탐구합니다.

루트 URI(/)에서 /static 폴더에 대한 액세스를 구성하려면 다음을 정의합니다. 루트가 /static 하위 폴더로 설정된 위치 블록:

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

Slim PHP 프레임워크가 포함된 /manage 폴더의 경우 루트 경로를 다음으로 설정해야 합니다. index.php 파일이 있는 공개 하위 폴더. 공용 하위 폴더는 위치이므로 루트 대신 별칭 지시문이 사용됩니다.

location ^~ /manage {
    alias /var/www/mysite/manage/public;
    index index.php;
}

또한 PHP 파일이 /static 및 /manage 폴더 모두에 있는 경우 두 개의 위치 ~ .php 블록이 필요합니다. :

location ~ \.php$ {
    try_files $uri =404;
    fastcgi_pass 127.0.0.1:9000;

    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $request_filename;
    fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}

location ~ \.php$ {
    if (!-f $request_filename) { return 404; }
    fastcgi_pass 127.0.0.1:9000;

    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $request_filename;
    fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}

^~ 수정자는 접두사 위치가 /manage는 정규식 위치 ~ .php$보다 우선합니다.

위 내용은 URI 접두사가 다른 하위 폴더에 대해 Nginx 위치 블록을 구성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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