If you use a proxypassmatch or proxypass it passes the php script to be processed by the php-fpm process and the php-fpm process ignores .htaccess rules.
One way to avoid it is to use apache sethandler as is explained in this answer https://serverfault.com/a/672969/189511,
<FilesMatch \.php$>
SetHandler "proxy:unix:/path/to/socket.sock|fcgi://unique-domain-name-string/"
</FilesMatch>
I'll copy the full solution here
After hours of searching and reading Apache documentation I've come up
with a solution that allows to use the pool, and also allow the
Rewrite directive in .htaccess to work even when the url contains .php
files.
<VirtualHost ...>
...
# This is to forward all PHP to php-fpm.
<FilesMatch \.php$>
SetHandler "proxy:unix:/path/to/socket.sock|fcgi://unique-domain-name-string/"
</FilesMatch>
# Set some proxy properties (the string "unique-domain-name-string" should match
# the one set in the FilesMatch directive.
<Proxy fcgi://unique-domain-name-string>
ProxySet connectiontimeout=5 timeout=240
</Proxy>
# If the php file doesn't exist, disable the proxy handler.
# This will allow .htaccess rewrite rules to work and
# the client will see the default 404 page of Apache
RewriteCond %{REQUEST_FILENAME} \.php$
RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_URI} !-f
RewriteRule (.*) - [H=text/html]
</VirtualHost>
As per Apache documentation, the SetHandler proxy parameter requires
Apache HTTP Server 2.4.10.
I hope that this solution will help you too.