私はnginxのドキュメントを見ましたが、それでも私を全く混乱させます。
どのように機能しtry_files
ますか?ドキュメントの内容は次のとおりです。
try_files
構文:try_files path1 [path2] uri
デフォルト:なし
コンテキスト:サーバー、場所
可用性:0.7.27
ファイルの存在を順番に確認し、見つかった最初のファイルを返します。末尾のスラッシュはディレクトリを示します-$ uri /。ファイルが見つからない場合、最後のパラメーターへの内部リダイレクトが呼び出されます。最後のパラメーターはフォールバックURIであり、存在している必要があります。存在し ない場合、内部エラーが発生します。書き換えとは異なり、フォールバックが名前付きの場所でない場合、$ argsは自動的に保持されません。引数を保存する必要がある場合は、明示的に保存する必要があります。
パスをどのようにチェックするのか理解できません。内部エラーを望まないが、別のファイルを見つけるためにパスの残りの部分を再開させる場合はどうすればよいですか?
キャッシュされたファイルを試してみたい場合、/path/app/cache/url/index.html
そしてそれが試せない場合、/path/app/index.php
どのように書くのでしょうか?私が書いた場合:
try_files /path/app/cache/ $uri
include /etc/nginx/fastcgi_params;
fastcgi_pass unix:/var/run/php-fastcgi/php-fastcgi.socket;
fastcgi_param SCRIPT_FILENAME $document_root/index.php;
私が持っていindex index.php index.html index.htm;
ます。私が訪れたとき/urlname
、それはチェックしようとし/path/app/cache/urlname/index.php
た後/path/app/cache/urlname/index.html
?その後、すべてを無視すると、キャッシュフォルダーを確認try_files
できtry_files
ますか?私はしようとして失敗しました。