最近、会社のサーバーの 1 つを Apache から Nginx に移行するときに問題が発生したので、メモを作成しました。
問題は、上記の Web サイトが ThinkPHP フレームワークに基づいて開発されており、デフォルトの方法を使用して構成できないという事実にあります。 Baidu オンラインで検索したところ、この問題は非常に一般的であることがわかりました。一般的な解決策の構成は次のとおりです。
サーバー{
...
if (!-e $request_filename) {
^/(.*) $ /Index.php/ $1 最後に書き換えます。
休憩;
}
}
場所 ~ .+.php($|/) {
....
$script $uri を設定します;
$path_info "/" を設定します;
If ($uri ~ "^(.+.php)(/.*)") {
$script $1 を設定します;
$path_info $2 を設定します;
}
Fastcgi_param PATH_INFO $path_info;
Fastcgi_param SCRIPT_FILENAME /path/to/web-root$script;
}
...
try_files $uri /index.php$uri;
}
場所 ~ .+.php($|/) {
....
Fastcgi_param PATH_INFO $fastcgi_path_info;
Fastcgi_param SCRIPT_FILENAME /path/to/web-root$fastcgi_script_name;
}
http://www.bkjia.com/PHPjc/477891.html