htaccess文件夹保护+ php7.0-fpm / fastcgi:.php文件仍可访问

时间:2016-02-15 07:33:23

标签: php apache .htaccess fastcgi

我在Ubuntu 14.04上使用php7.0-fpm / fastcgi,apache 2.4设置了一个小小的液滴。
除了一个小细节外,一切都顺利进行:

问题是我希望通过经典的.htaccess保护保护文件夹,没什么特别的。

但是,如果我去" my-droplet-ip / my-protected-folder / my-file.php" ,我仍然可以访问它,即使是htaccess配置。

如果我转到" my-droplet-ip / my-protected-folder" ,登录/传递提示会显示为预期。 " my-droplet-ip / my-protected-folder / a-file的相同正常行为。(html | png | ini ...)"

我读了很多东西,比如fastcgi可以"处理"在htaccess之前的php文件,但我不能真正理解为什么/如何。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

尤里卡。

短篇小说,请勿使用:

ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://127.0.0.1:9000/var/www/html/$1

使用FastCGI处理php文件,因为似乎ProxyPassMatch之前评估了.htaccess指令。

更好用:

<FilesMatch \.php$>
    SetHandler "proxy:fcgi://127.0.0.1:9000"
</FilesMatch>

那里有更多细节:https://ma.ttias.be/apache-2-4-proxypass-for-php-taking-precedence-over-filesfilesmatch-in-htaccess/