nginx+thinkphp에서 지원되지 않는 pathinfo 모드 및 다양한 404,500개의 문제를 해결합니다.

WBOY
풀어 주다: 2016-08-08 09:21:48
원래의
857명이 탐색했습니다.

nginx 환경 문제를 이틀째 작업해 봤는데, 인터넷에 올라오는 많은 분들의 글을 복사해서 붙여넣거나, 아예 올리지 않고, 심지어 "하하, 제가 직접 해결했어요" 같은 글도 적는 걸 발견했습니다. ". 저는 이런 글들을 경멸합니다. 동포 여러분, 질문을 했다고 하셨는데, 문제가 해결된 후에도 설명을 하지 않으셨습니다. 여전히 검색의 처음 몇 페이지에서 답이 필요한 사람들의 감정에 대해 생각해 본 적이 있습니까? 나는 기쁜 마음으로 답을 살펴보았는데, 매듭이 없다는 것을 알았습니다. 좋아요, 더 이상 고민하지 말고 본론으로 들어가겠습니다.

제 방법에서는 재작성/호환을 위해 URL_Model을 변경할 필요가 없습니다.

라인 43에서 다음을 따라 코드를 수정하세요. 자세한 기호에 주의하세요.

위치 / {
root C:/Zend/workspaces #//이것은 자신의 프로젝트의 루트 디렉터리입니다.
          index index.html index.htm index.php; 🎜 > break;
break; }
}
>$
기호가 이런 이유로 처음에는 해결되지 않았습니다.

위치 ~ .php {
루트 C:/Zend/workspaces;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php ; fastcgi_param SCRIPT_FILENAME C:/wnmp/ php$fastcgi_script_name; include fastcgi_params;

set $path_info "";

set $real_script_name $fastcgi_script_name;
if ( $fastcgi_script_name ~ "^(.+?.php)(/.+) $") {
$real_script_name $1 설정;
$path_info $2 설정;
}
fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
                                                                   사용   사용 사용 ' ' s 사용 ' s ‐ fastcgi_param SCRIPT -NAME $real_script_name
       }

그래도 해결되지 않으면 ThinkPHP 항목 파일 index.php에 정의('_PHP_FILE_',$_SERVER['SCRIPT_NAME']) 구성을 추가하세요.

그동안 500,404의 문제를 겪으셨을 수도 있겠지만, 한 가지만 기억하세요. 조심하세요. 제가 한대로 바꾸시면 기본적으로는 문제가 없을 것 같습니다. 그래도 궁금한 점이 있으시면 상담 메시지를 남겨주세요.

솔루션 소스 참조: http://www.codesth.com/%E4%B8%8D%E7%94%A8rewrite%E5%85%BC%E5%AE%B9%EF%BC% 8C %E8%A7%A3%E5%86%B3nginx%E4%B8%8D%E6%94%AF%E6%8C%81thinkphp-pathinfo%E6%A8%A1%E5%BC%8F/

위의 내용을 포함하여 pathinfo 모드를 지원하지 않는 문제와 nginx+thinkphp에서 발생하는 다양한 404,500가지 문제를 해결하는 방법을 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되길 바랍니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿