백엔드 개발 PHP 튜토리얼 使Nginx支持ThinkPHP框架_PHP教程

使Nginx支持ThinkPHP框架_PHP教程

Jul 14, 2016 am 10:07 AM
apache nginx thinkphp 회사 할 것이다 지원하다 최대 섬기는 사람 액자 ~의

最近在将公司的一台的服务器从Apache迁移到Nginx的时候出了点问题,特做个笔记。
问题出在上面的一个网站是基于ThinkPHP框架开发的,用默认的方法配置不行。在网上baidu之后发现这个问题很普遍,通用解决方法的配置如下:
server {
 ...
        if (!-e $request_filename) {
           rewrite  ^/(.*)$  /index.php/$1  last;
           break;
        }

}

location  ~ .+\.php($|/) {
 ....
    set $script $uri;
    set $path_info  "/";
    if ($uri ~ "^(.+\.php)(/.*)") {
        set $script     $1;
        set $path_info  $2;
     }
    
    fastcgi_param  PATH_INFO  $path_info;
    fastcgi_param  SCRIPT_FILENAME  /path/to/web-root$script;

}


昨天在看书的时候突然发现,原来fastcgi模块自带了一个指令专门用来解决此类问题的,该指令是fastcgi_split_path_info  ,该指令会根据给定的正则表达式来分隔URL,从而提取出脚本名和path info信息,使用这个指令可以避免使用if语句,配置更简单。(server部分的if语句可以用try_files来代替),新的配置如下:
server {
 ...
  try_files  $uri  /index.php$uri;
}

location  ~ .+\.php($|/) {
 ....
    fastcgi_split_path_info  ^(.+\.php)(/.*)$;
    fastcgi_param  PATH_INFO $fastcgi_path_info;
    fastcgi_param  SCRIPT_FILENAME  /path/to/web-root$fastcgi_script_name;

}

 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/477891.htmlTechArticle最近在将公司的一台的服务器从Apache迁移到Nginx的时候出了点问题,特做个笔记。 问题出在上面的一个网站是基于ThinkPHP框架开发的,用默...
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 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)

WordPress 사이트 파일 액세스가 제한됩니다. 도메인 이름을 통해 .txt 파일에 액세스 할 수없는 이유는 무엇입니까? WordPress 사이트 파일 액세스가 제한됩니다. 도메인 이름을 통해 .txt 파일에 액세스 할 수없는 이유는 무엇입니까? Apr 01, 2025 pm 03:00 PM

WordPress 사이트 파일 액세스가 제한됩니다. 최근 .txt 파일에 액세스 할 수없는 이유를 문제 해결하십시오. 미니 프로그램 비즈니스 도메인 이름을 구성 할 때 일부 사용자는 문제가 발생했습니다.

동일한 서버에서 NGINX 구성을 통해 PHP5.6 및 PHP7이 공존하는 방법은 무엇입니까? 동일한 서버에서 NGINX 구성을 통해 PHP5.6 및 PHP7이 공존하는 방법은 무엇입니까? Apr 01, 2025 pm 03:15 PM

같은 시스템에서 여러 PHP 버전을 동시에 실행하는 것은 특히 다른 프로젝트가 다른 버전의 PHP에 의존 할 때 일반적인 요구 사항입니다. 똑같은 방법 ...

ThinkPhp6 라우팅 : 중국어와 같은 특수 문자를 포함하는 URL 매개 변수를 완전히 얻는 방법은 무엇입니까? ThinkPhp6 라우팅 : 중국어와 같은 특수 문자를 포함하는 URL 매개 변수를 완전히 얻는 방법은 무엇입니까? Apr 01, 2025 pm 02:51 PM

ThinkPhp6 라우팅 매개 변수는 중국어 및 완전한 획득으로 처리됩니다. ThinkPhp6 프레임 워크에서 특수 문자 (예 : 중국어 및 구두점 마크)를 포함하는 URL 매개 변수는 종종 처리됩니다 ...

CURL 오류 문제를 해결하는 방법 77 Elasticsearch 8에 연결할 때 ThinkPhp6 및 Elasticsearch-PHP 클라이언트를 사용하는 방법은 무엇입니까? CURL 오류 문제를 해결하는 방법 77 Elasticsearch 8에 연결할 때 ThinkPhp6 및 Elasticsearch-PHP 클라이언트를 사용하는 방법은 무엇입니까? Mar 31, 2025 pm 11:36 PM

Elasticsearch-PHP 클라이언트와 결합 된 ThinkPHP6 프레임 워크 사용 ELASTICSEARCH를 작동 ...

램프 아키텍처에서 Node.js 또는 Python 서비스를 효율적으로 통합하는 방법은 무엇입니까? 램프 아키텍처에서 Node.js 또는 Python 서비스를 효율적으로 통합하는 방법은 무엇입니까? Apr 01, 2025 pm 02:48 PM

많은 웹 사이트 개발자는 램프 아키텍처에서 Node.js 또는 Python 서비스를 통합하는 문제에 직면 해 있습니다. 기존 램프 (Linux Apache MySQL PHP) 아키텍처 웹 사이트 요구 사항 ...

H5 프로젝트를 실행하는 방법 H5 프로젝트를 실행하는 방법 Apr 06, 2025 pm 12:21 PM

H5 프로젝트를 실행하려면 다음 단계가 필요합니다. Web Server, Node.js, 개발 도구 등과 같은 필요한 도구 설치. 개발 환경 구축, 프로젝트 폴더 작성, 프로젝트 초기화 및 코드 작성. 개발 서버를 시작하고 명령 줄을 사용하여 명령을 실행하십시오. 브라우저에서 프로젝트를 미리보고 개발 서버 URL을 입력하십시오. 프로젝트 게시, 코드 최적화, 프로젝트 배포 및 웹 서버 구성을 설정하십시오.

Gitee Pages 정적 웹 사이트 배포 실패 : 단일 파일 문제를 해결하고 해결하는 방법 404 오류? Gitee Pages 정적 웹 사이트 배포 실패 : 단일 파일 문제를 해결하고 해결하는 방법 404 오류? Apr 04, 2025 pm 11:54 PM

GiteEpages 정적 웹 사이트 배포 실패 : 404 오류 문제 해결 및 해결시 Gitee ...

PC 및 모바일 측면에서 동일한 페이지를 공유하고 캐시 문제를 처리하는 방법은 무엇입니까? PC 및 모바일 측면에서 동일한 페이지를 공유하고 캐시 문제를 처리하는 방법은 무엇입니까? Apr 01, 2025 pm 01:57 PM

PC 및 모바일 측면에서 동일한 페이지를 공유하고 캐시 문제를 처리하는 방법은 무엇입니까? Baota 배경, PC 측면을 만드는 방법 및 ...

See all articles