Назад | Перейти на главную страницу

Получение 404 в любом текстовом файле (включая robots.txt) с помощью nginx

Я недавно переместил свою машину CentOS 7 с веб-сервера Apache на веб-сервер nginx, и я все еще решаю различные проблемы, изучая входы и выходы nginx. Одна проблема, с которой я столкнулся, заключается в том, что текстовые файлы, такие как robots.txt, по-видимому, недоступны в моем общедоступном корневом веб-каталоге.

Конфигурация моего серверного блока выглядит следующим образом:

server {
    listen       80;
    server_name  example.com;
    root         /var/www/example.com/public_html;
    index        index.php;
    access_log   /var/www/example.com/logs/example.com_access.log;
    error_log    /var/www/example.com/logs/example.com_error.log error;

    location / {
        index index.php index.html;
    }

    location /reports {
        autoindex on;
    }

    location ~ \.php$ {
        try_files          $uri =404;
        fastcgi_pass       unix:/var/run/php-fpm/php-fpm.sock;
        fastcgi_param      SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include            fastcgi_params;
    }

    error_page 404 /var/www/html/404.html;
    error_page 500 502 503 504 /var/www/html/50x.html;

    location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
        expires max;
        log_not_found off;
    }

    location /robots.txt {
        #access_log off;
        #log_not_found off;
    }

    location ~ /\.ht {
        deny all;
    }
}

Я не понимаю, почему текстовые файлы недоступны. Я подумал, что это проблема, когда я использую PHP, но я не мог определить, что может блокировать доступ к файлу.

Я также не могу проверить свои файлы журналов (пока), потому что этот серверный блок, похоже, не записывает в мои журналы, но это в Другой вопрос.

Что здесь может происходить?