---
title: "Why Nginx creates a file named "off"?"
date: 2025-10-23
lang: en
translationKey: why-nginx-creates-a-file-named-off
tags: [Nginx, Linux, DevOps]
description: "An incorrect Nginx configuration can lead to a mysterious “off” file being written."
---

If you've ever found an unexpected file named `off` under `/etc/nginx/`, here's the reason why.

When configuring **Nginx**, it's possible to **disable error logging**. However, the directive must be used correctly:

```nginx
error_log /dev/null;
```

If you mistakenly write:

```nginx
error_log off;
```

Nginx will interpret `off` as a file path, not as a keyword, and will try to create (or write to) `/etc/nginx/off`.
That's why you'll find an empty file named `off` in your configuration directory.

This behavior happens because Nginx's configuration parser does not treat `off` as a special keyword for the `error_log` directive.
Instead, it expects a **file path** as the first argument, followed optionally by a log level (like `warn`, `error`, or `debug`).

To **disable logging properly**, just redirect it to `/dev/null`, which effectively discards all log output:

```nginx
error_log /dev/null;
```

This simple change prevents Nginx from creating the mysterious `off` file.

Have you ever had this problem? I have 😁 That's why I decided to write a short post about it.
