Top.Mail.Ru
Ответы

Ошибка в FTP сервере.

Значит, есть у меня хостинг на рег.ру, а на моем сайте имеется база данных со всеми данными пользователей (хранится на FTP и mySQL). Когда пользователь нажимает кнопку "Загрузить" или "Сохранить" статистику аккаунта, у него ничего не получается, а в логи пишет эту ошибку:

server: мойсайт.ру, request: "POST /database/downloadGJLevel22.php HTTP/1.1", upstream: "http://127.0.0.1:8080/database/downloadGJLevel22.php", host: "мойсайт.ру"
[Thu Nov 16 09:12:20.817931 2023] [autoindex:error] [pid 5234:tid 140520919656192] [client 178.49.4.229:60686] AH01276: Cannot serve directory /var/www/u2206123/data/www/мойсайт.ру/database/data/accounts/: No matching DirectoryIndex (index.php,index.html,hosting_static_lostindex/index.html,index.php) found, and server-generated directory index forbidden by Options directive

Вся статистика аккаунта, которую надо загрузить, находится по этому пути: /database/data/accounts/

И именно из этой папки, не загружается и не сохраняется туда статистика. Почему то в папке, которая находится по одному пути с ней (/database/data/levels/) работает корректно, а папка со статой аккаунтов не работает. Все правила выставлял на 777, и ноль результата. Папку пересоздавал, ноль результата. Даже откат, сервера скачивал, который на тот момент работал, и ничего... Помогите пожалуйста!

По дате
По рейтингу
Аватар пользователя
Новичок

Привет, Ваша проблема касается конфигурации веб-сервера (в данном случае, Apache), а именно того, как обрабатываются запросы к директории, в которой находится ваш файл downloadGJLevel22.php.

Ошибка Cannot serve directory ... No matching DirectoryIndex found обычно указывает на то, что в директории нет файла, который сервер может использовать как индексный файл (например, index.php или index.html). Также, возможно, в настройках сервера отключено автоматическое создание списка файлов в директории, если не найден индексный файл.

Чтобы решить эту проблему, вы можете предпринять следующие шаги:

Добавьте индексный файл:
Убедитесь, что в директории /var/www/u2206123/data/www/мойсайт.ру/database/data/accounts/ есть индексный файл, например, index.php или index.html. Если файла нет, создайте его.

Настройте сервер на разрешение автоматического индексирования:
В вашем виртуальном хосте или конфигурационном файле Apache убедитесь, что есть следующая директива:


1
 Options +Indexes  

Это разрешает серверу автоматически индексировать директории, если не найден индексный файл.

Пример конфигурации для Apache:

12345
 <Directory "/var/www/u2206123/data/www/мойсайт.ру/database/data/accounts/"> 
    Options +Indexes 
    AllowOverride All 
    Require all granted 
</Directory> 

Перезапустите веб-сервер:
После внесения изменений в конфигурацию Apache, перезапустите веб-сервер, чтобы изменения вступили в силу.

1
 sudo service apache2 restart 

После внесения этих изменений, сервер должен правильно обрабатывать запросы к директории /var/www/u2206123/data/www/мойсайт.ру/database/data/accounts/. Если проблема не решена, вам, возможно, потребуется дополнительная диагностика или просмотр настроек сервера и ваших файлов.