如果“-f %{REQUEST_FILENAME}”意味着什么 - fcgi

如果“-f %{REQUEST_FILENAME}”意味着什么 - fcgi

我配置了 apache + php-fpm + mod_proxy_fcgi 服务器,但我无法理解两个教程中没有解释原因的行。这是在其他教程中找不到的。

<FilesMatch "\.php$">
<If "-f %{REQUEST_FILENAME} && %{REQUEST_URI} =~ /.+\.ph(ar|p|tml)$/" >

SetHandler "proxy:unix:/run/php-fpm/example.com.sock|fcgi://example.com/"

</if>
</FilesMatch>

我不明白这一行:

<If "-f %{REQUEST_FILENAME} && %{REQUEST_URI} =~ /.+\.ph(ar|p|tml)$/" >

我能够确定这一行的意思是:“检查文件是否确实存在”我理解正确吗?如果是这样,为什么要检查?也许不需要?

答案1

使用该行,您只需将那些实际调用 PHP 文件的请求委托给 php-fpm。这样,您就可以避免对与 php-fpm 不相关的文件不必要地调用 php-fpm,因为它们不是 PHP。

相关内容