try_files
Gena Makhomed
gmm at csdoc.com
Sat Jul 23 17:05:42 UTC 2011
On 23.07.2011 17:42, António P. P. Almeida wrote:
>> + location ^~ /media/ {
>> + # static
>> + expires 30d;
>> + error_page 404 = @joomla;
>> + log_not_found off;
>> + }
> Wouldn't the use of try_files be preferable to error_page?
>
> - error_page 404 = @joomla;
> + try_files $uri $uri/ @joomla;
I just copy/paste/paste/paste already working config fragment...
> From the little I know, try_files does a stat() call while error_page
> is a special response. They both do an internal redirection. They run
> on different phases. Is this correct? If so is there any rule of thumb
> for deciding when to use try_files vs. error_page 404.
As far I know, "try_files $uri $uri/ @joomla;" directive
and "error_page 404 = @joomla;" with "log_not_found off;"
has the same behaviour, - this is written at russian documentation.
http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#try_files
As I can see in http://nginx.org/en/CHANGES
try_files first appeared in nginx 0.7.27, and last known bug
with try_files was fixed in nginx 0.8.39, so in older versions
of nginx error_page 404 with log_not_found off; may be better,
or may be the only one way to do such things.
and main purpose of try_files - is just to be syntactic sugar
for config files to be more clean and easy to read/understand.
as in C language a[i] notation is syntactic sugar for *(a + i)
--
Best regards,
Gena
More information about the nginx
mailing list