thinkphp nginx php-fpm url 재작성 시 404 오류 발생
이전에는 thinkphp 시스템을 Apache에 배포했지만 동시성 성능 측면에서 nginx가 Apache보다 훨씬 강력하다는 점을 고려하면 nginx php-fpm 모드는 다음과 같습니다. centos에서 사용되었으며 thinkphp 시스템을 다시 배포하여
|
/색인.php/홈/사용자/확인
|
이러한 URL nginx는 404 오류를 보고하지만
1 |
|
은 나중에 접근 가능하다는 뜻인데, 이전 URL nginx는 지원하지 않는다는 뜻인데 왜 지원하지 않는 걸까요? 이 문제를 해결하려면 먼저 thinkPHP의 여러 URL 모드를 이해해야 합니다.
1. 경로 정보 패턴
1 |
/?s=/home/user/verify |
1
|
/색인.php/홈/사용자/확인 |
2 . 다시 쓰기 모드
|
/?s=/집/사용자/확인
|
1 234567891011 |
#以index.php开头的uri location~^/index.php(.*) { #如果文件或者路径不存在 if(!-e$request_filename) { #将pathinfo模式的uri重写成普通模式 rewrite ^/index.php(.*)$ /index.php?s=$1 last; break; } } |
1 2 34567891011 | #uri위치 ~^/index.php(.* ) 스팬> if(!-e$request_filename ) .*)$ / index.php?s= $1 마지막; 스팬> 🎜> } } 스팬> |
|
서비스 nginx 다시 로드 |