I looked at the nginx documentation and it still confuses me utterly.
try_files work? Here is what the documentation says:
syntax: try_files path1 [path2] uri
context: server, location
Checks for the existence of files in order, and returns the first file that is found. A trailing slash indicates a directory - $uri /. In the event that no file is found, an internal redirect to the last parameter is invoked. The last parameter is the fallback URI and must exist, or else an internal error will be raised. Unlike rewrite, $args are not automatically preserved if the fallback is not a named location. If you need args preserved, you must do so explicitly:
I don't understand how it checks the paths and what if I don't want an internal error but have it resume the rest of the path in an effort to find another file?
If I want to try a cached file at
/path/app/cache/url/index.html and if it fails to try
/path/app/index.php how would I write that? If I wrote:
try_files /path/app/cache/ $uri
fastcgi_param SCRIPT_FILENAME $document_root/index.php;
index index.php index.html index.htm;. When I visit
/urlname, will it try checking
/path/app/cache/urlname/index.html? If we ignore everything after
try_files is it possible for
try_files to check the cache folder? I have been trying and have failed.