I'm blogging about Emacs, Drupal, php and exciting subjects

How to Prevent the Most Basic Weaknesses in Docker Configurations

Introduction: Docker Security Is Not Automatic

Docker has become a standard deployment tool for PHP applications, especially in Symfony and modern microservice-based architectures. However, while Docker improves consistency and deployment speed, it does not automatically guarantee security.

In many production environments, systems become more reproducible but not necessarily more secure. Weak defaults and misconfigurations remain one of the most common causes of infrastructure exposure.

Network Segmentation in Production PHP Systems

Modern PHP infrastructure has evolved far beyond the traditional model of deploying a small application onto a single Linux server and exposing it directly to the internet. Production environments today often consist of multiple interconnected layers that include reverse proxies, application clusters, container platforms, internal APIs, Redis instances, queue workers, monitoring systems, deployment pipelines, cloud networking, and distributed databases.

How Secure Production PHP Infrastructure Actually Works

Modern PHP applications rarely fail because of a simple SQL injection vulnerability or a missing input validation rule alone. Real-world compromises increasingly occur at the infrastructure layer through exposed services, weak deployment pipelines, leaked credentials, misconfigured containers, vulnerable dependencies, or poorly isolated application environments.

Puppet vs Ansible for Infrastructure Automation

Choosing the right infrastructure automation platform is one of the most important decisions organizations make when scaling server management and DevOps workflows. Two of the most widely used configuration management tools are Puppet and Ansible.

Both platforms automate infrastructure tasks, reduce manual administration, and improve operational consistency. However, they use very different architectures and operational models.

Understanding the strengths and limitations of each platform is essential when building modern infrastructure automation strategies.

Puppet SSL Certificate Troubleshooting Guide

SSL certificate problems are among the most common and frustrating issues administrators encounter when managing Puppet infrastructure. Puppet relies heavily on certificate-based authentication between agents and the Puppet server, and even minor certificate problems can prevent entire infrastructure environments from receiving configuration updates.

Understanding how Puppet certificates work, why they fail, and how to troubleshoot them effectively is essential for maintaining reliable infrastructure automation.

Structured Data for SoftwareApplication and TechArticle: Schema for Developer Sites

Most structured data guides begin and end with Article, Product, and BreadcrumbList. For developer-focused sites — blogs covering tools, libraries, and technical how-tos — two schema types deserve far more attention: TechArticle and SoftwareApplication. Both are valid Schema.org types that Google's Rich Results Test recognises, both are chronically underused, and both map naturally onto the kind of content a developer blog publishes.

TLS 1.3 Only: Hardening Nginx SSL to Get an A+ on SSL Labs

SSL Labs' A+ rating is the benchmark for a correctly hardened HTTPS configuration. Achieving it requires more than just installing a certificate — you need to restrict protocol versions, configure cipher suites appropriately, enable OCSP stapling, set strict HSTS headers, and tune session resumption. This article covers a complete Nginx TLS 1.3 configuration for a Drupal site, with explanations for every directive.

Drupal Configuration Management: Syncing Config Between Environments

Drupal's configuration management system is one of its most powerful features for maintaining consistency across development, staging, and production environments. When it works well, deploying a change is as simple as running drush cim -y. When it goes wrong, you are staring at UUID mismatches and hash errors. This article covers the full workflow, from basic export/import to environment-specific config splits and safe deployment practices.

Nginx Worker Processes and Connections: Tuning for Your Server

Nginx's default configuration is conservative. The defaults for worker processes and connections will serve a low-traffic site without complaint, but they leave performance on the table for anything larger. Understanding what these settings do and how they interact lets you tune Nginx to use the hardware you have paid for.

PHP 8.3 Typed Class Constants and json_validate: What You Need to Know

PHP 8.3, released in November 2023, is a focused release. It does not introduce a sweeping new feature like fibers or enums, but it adds several small improvements that remove friction from everyday PHP code. The two most immediately useful additions are typed class constants and the json_validate() function. This article covers both in depth, along with the other 8.3 additions worth knowing about.

Subscribe to