http.server --cgi не исполняется файл
Всем здравия!
Использую сервер Python - http.server на платформе Orange Pi 3 LTS, Ubuntu 22.04.3 LTS. Получаю доступ к апельсине из консоли Windows через ssh. Запускаю сервер командой:
python3 -m http.server --cgi
Сервер запускается. Далее из браузера компьютера пытаюсь выполнить;
http://<ip addres Opange Pi>:8000/cgi-bin/hello.sh
При этом сервер в консоли пишет, что доступ к файлу запрещён:
----------------------------------------
Exception occurred during processing of request from ('<ip моего компа>', <port>)
Traceback (most recent call last):
File "/usr/lib/python3.10/http/server.py", line 1189, in run_cgi
os.execve(scriptfile, args, env)
PermissionError: [Errno 13] Permission denied: '/root/server/cgi-bin/hello.sh'
----------------------------------------
<ip моего компа> - - [16/Feb/2024 12:55:49] CGI script exit code 127
При этом разрешение на выполнение скрипта hello.sh задано командой chmod +x hello.sh и проверено, что скрипт исполняется.
Если запускаю сервер в отдельном потоке и локально пытаюсь сделать к нему запрос:
curl -v -X POST http://0.0.0.0:8000/cgi-bin/hello.sh
то происходит то же самое - сервер отвечает, что доступ к файлу запрещён. Работаю из под рута. Пробовал запустить сервер на Windows и исполнить скрипт - там всё прекрасно работает.
В чём причина отсутствия доступа к файлу hello.sh в Linux, и как её побороть?