Running a Drupal site on Nginx means you are responsible for your own security posture. The default Nginx configuration is permissive — it is built for compatibility, not hardening. This guide walks through every layer of a production-grade Nginx configuration for PHP and Drupal sites: from hiding server fingerprints and locking down sensitive files, to security headers, TLS hardening, rate limiting, and PHP-FPM settings.
All examples are tested against Nginx 1.24+ and Drupal 10/11. Adapt paths to match your server layout.
When developers think about SEO, they often focus on performance, metadata, or structured data. Internal linking is usually treated as a content concern.
In reality, internal linking is one of the most powerful—and most controllable—ranking factors.
It defines how search engines discover your content, how authority flows through your site, and which pages are considered important.
JavaScript has transformed how websites are built. It enables rich interactions, dynamic content, and seamless user experiences.
But from an SEO perspective, it introduces complexity.
Search engines can process JavaScript—but not always reliably, and not always immediately. This gap between what users see and what search engines see is where many SEO issues begin.
A technical SEO audit is often treated like a checklist. Run a tool, fix a few errors, and move on. But in reality, a proper audit is much closer to debugging a complex system than ticking boxes.
If your site isn’t ranking as expected, there is always a reason. The challenge is finding it.
This guide walks through how developers should approach a technical SEO audit—methodically, with a focus on root causes rather than surface-level symptoms.