lnmp thinkphp nginx는 pathinfo 솔루션을 지원하지 않습니다
첫 번째: lnmp 원클릭 설치 패키지의 공식 방법입니다.
http://www.aiyuanxing.cn/index.php/category/nginx
에서 재인쇄됨
php.ini 변경
발견됨: cgi.fix_pathinfo=0
다음으로 변경: cgi.fix_pathinfo=1
nginx 해당 구성 파일 수정
include pathinfo에서 #을 제거하고 try_files 앞에 #을 추가하세요.
이 방법을 테스트했는데 나에게 적합하지 않았습니다.
두 번째 유형: lnmp1.1 및 lnmp1.2에서 thinkphp의 pathinfo 모드를 지원할 수 있습니다.
위치 / {
#ThinkPHP 재작성
if (!-e $request_filename){
^/(.*)$ /index.php/$1 마지막에 다시 작성하세요.
}
}
위치 ~ .php($|/){
#URL 재작성을 위해 PATH_INFO를 지원하도록 PHP 구성
$script $uri;
설정
$path_info “”;
설정
if ($uri ~ “^(.+?.php)(/.+)$”) {
$script $1 설정;
$path_info $2 설정;
}
try_files $uri =404;
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
fastcgi.conf 포함;
fastcgi_param SCRIPT_FILENAME $document_root$script;
fastcgi_param SCRIPT_NAME $script;
fastcgi_param PATH_INFO $path_info;
}
수정 후에는 nginx 서버 서비스를 다시 시작해야 합니다. nginx restart