403 Запрещено nginx (nginx/1.8.0)

403 Запрещено nginx (nginx/1.8.0)

Я только что получил новый сервер в DigitalOcean и хочу попробовать кое-что еще. Я хочу запустить сайт на WordPress, поэтому я следую первым 1-3 шагам отсюда:https://deliciousbrains.com/hosting-wordpress-yourself-nginx-php-mysql/. Сначала все идет хорошо, и мне удалось установить WordPress. К сожалению, сейчас на моем сайте ошибка 403 Forbidden.

Я на Ubuntu 14.04 x64. Я уже застрял на некоторое время и до сих пор не имею ни малейшего представления о том, что происходит. Я даже пытался удалить Nginx и переустановить, все равно то же самое.

Вот мой файл конфигурации:

пользователь Сильвия;
рабочие_процессы 1;
pid /run/nginx.pid;

события {
        рабочие_соединения 1024;
        # multi_accept включен;
}

http {

        ##
        # Базовые настройки
        ##

        отправить файл;
        tcp_nopush вкл.;
        tcp_nodelay включен;
        keepalive_timeout 15;
        types_hash_max_size 2048;
        # server_tokens выключены;
        клиентский_макс_размер_тела 64м;

        # server_names_hash_bucket_size 64;
        # имя_сервера_в_перенаправлении выключено;

        включить /etc/nginx/mime.types;
        default_type приложение/octet-stream;

        ##
        # Настройки ведения журнала
        ##

        access_log /var/log/nginx/access.log;
        error_log /var/log/nginx/error.log;

        ##
        # Настройки Gzip
        ##

        gzip включен;
        gzip_disable "msie6";

        # gzip_vary вкл;
        # gzip_proxied любой;
        # gzip_comp_level 2;
        # gzip_buffers 16 8k;
        # gzip_http_версия 1.1;
        # gzip_types текст/обычный текст/приложение css/приложение json/javascript текст/приложение xml/приложение xml/xml+rss текст/javascript;

        ##
        # Конфигурации виртуального хоста
        ##

        включить /etc/nginx/conf.d/*.conf;
        включить /etc/nginx/sites-enabled/*;

       сервер {
              прослушивание 80 default_server;
               имя сервера _;
               возврат 444;
                    }

Есть идеи?

решение1

Скорее всего, проблема с правами доступа. Дайте разрешение пользователю www-data на доступ к корневому каталогу вашего веб-сайта. Или вы также можете дать право собственности.

chown -R www-data:www-data /path/to/your/directory

решение2

Запрещено означает, что NGINX не может открыть каталог, в котором хранятся файлы.

Файл error_logs NGINX укажет вам точную причину проблемы.

Логи хранятся в /var/logs/nginx/error_log. Просто откройте файл, просмотрите последние строки и посмотрите, какую именно ошибку вы получаете.

В идеале, выполнение chmod 755 для каталога решит проблему.

решение3

У меня тоже была проблема 403, вызванная режимом каталога.

Я установил корневой каталог в качестве домашнего, а режим по умолчанию для домашнего каталога — 600.

Потом я нашел эту статьюhttps://gist.github.com/jhjguxin/6208474, и попробовал изменить корневой каталог на 755, и проблема была решена.

Таким образом, похоже, что разрешения по умолчанию для домашних каталогов пользователей в Ubuntu 12.04 — 700.** Nginx должен иметь разрешение на чтение файлов, которые должны обслуживаться, И разрешение на выполнение в каждом из родительских каталогов по пути от корня до обслуживаемых файлов.**

Вы можете предоставить своему каталогу пользователя эти разрешения, запустив

chmod 701 user_home

Вы также можете использовать разрешение 755, которое является настройкой по умолчанию для домашнего каталога во многих системах.

Каталоги/файлы в корневом веб-каталоге могут принадлежать пользователю www-data или вашему обычному персональному пользователю, если пользователь/группа, от имени которой работает nginx (как определено в nginx.conf), имеет разрешение на ЧТЕНИЕ для всех обслуживаемых файлов и разрешение на выполнение для всех корневых веб-каталогов.

решение4

Если вы просто пытаетесь вывести список содержимого каталога, используйте autoindex on;следующее:

location /somedir {
       autoindex on;
}

Связанный контент