• Debian 11 is approaching its end-of-life (vendor EOL date - August 31, 2026). Plesk Obsidian 18.0.80 will be the last release to support it.
    If you are running Plesk Obsidian on Debian 11, we recommend you upgrade those servers to Debian 12 using our dist-upgrade tool.
  • We plan to deprecate and remove the support for XML RPC protocol versions earlier than 1.6.9.1 in Plesk Obsidian 18.0.82. We strongly recommend that you update all existing integrations using earlier versions of the XML RPC protocol to comply with the version 1.6.9.1 specification.

Question Best way to block direct PHP file access and ensure .htaccess rules are always applied with Nginx as a reverse proxy?

brother4

Basic Pleskian
Hi all,

I have a server running Plesk with Nginx configured as a reverse proxy in front of Apache. I have several domains hosted on this server, and I want to ensure that .htaccess rules are always enforced, especially to prevent direct access to certain PHP files.

For example, I have the following .htaccess rule in place to redirect all requests to a different URL:

Code:
RewriteEngine On
RewriteRule .* https://new.example.com/? [R=302,L]

This rule works for most URLs, but in some cases, direct requests to PHP files (such as example.com/wp-includes/script-loader.php) still go through, and I get a 500 error instead of a redirection.

I don't want to globally disable Nginx for all domains, but I want to ensure that .htaccess rules are respected at all times.

What is the best way to configure Plesk, Nginx, and Apache so that requests to individual PHP files are blocked or redirected as per the .htaccess rules, without disabling Nginx across all domains?

Any advice or suggestions would be greatly appreciated!

Thank you!
 
Back
Top