<div dir="ltr"><div>This type of configuration is insecure since there's no whitelisting of the PHP scripts to be processed.<br><br><br></div><div><br><br></div></div><div class="gmail_extra"><br clear="all"><div>----appa<br>
<br></div>
<br><br><div class="gmail_quote">On Thu, Feb 13, 2014 at 1:34 PM, Maxim Dounin <span dir="ltr"><<a href="mailto:mdounin@mdounin.ru" target="_blank">mdounin@mdounin.ru</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hello!<br>
<div class=""><br>
On Wed, Feb 12, 2014 at 03:23:05PM -0800, Grant wrote:<br>
<br>
> I've found that if I don't specify:<br>
><br>
> index index.html index.htm index.php;<br>
><br>
> in the server blocks where I use fastcgi, I can get a 403 due to the<br>
> forbidden directory index.  I would have thought 'fastcgi_index<br>
> index.php;' would take care of that.  If this is the expected<br>
> behavior, should the index directive be added to the fastcgi wiki?<br>
<br>
</div>This is the expected and documented behaviour.<br>
<br>
The "fastcgi_index" directive is to instruct a fastcgi backend<br>
which file to use if a request with an URI ending with "/" is<br>
passed to the backend.  That is, it makes sense in a configuration<br>
like this:<br>
<br>
    location / {<br>
        fastcgi_pass  localhost:9000;<br>
        fastcgi_index index.php;<br>
        include       fastcgi.conf;<br>
    }<br>
<br>
It doesn't make sense in configurations with only *.php file<br>
passed to fastcgi backends though.  E.g., in a configuration like<br>
this it doesn't make sense and should be removed:<br>
<br>
    location ~ \.php$ {<br>
        fastcgi_pass  localhost:9000;<br>
        # wrong: fastcgi_index doesn't make sense here<br>
        fastcgi_index index.php;<br>
        include       fastcgi.conf;<br>
    }<br>
<br>
In this case, normal index processing applies.  It is explained in<br>
details in an introduction article here:<br>
<br>
<a href="http://nginx.org/en/docs/http/request_processing.html#simple_php_site_configuration" target="_blank">http://nginx.org/en/docs/http/request_processing.html#simple_php_site_configuration</a><br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Maxim Dounin<br>
<a href="http://nginx.org/" target="_blank">http://nginx.org/</a><br>
</font></span><div class="HOEnZb"><div class="h5"><br>
_______________________________________________<br>
nginx mailing list<br>
<a href="mailto:nginx@nginx.org">nginx@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx</a><br>
</div></div></blockquote></div><br></div>