Vova316
@Vova316

Как запустить CGI-сервер на Python?

Привет.
Подскажите, почему не работает CGI-сервер на Python?
Итак:

1. Установим чистую Ubuntu 24.04. Не будем ничего обновлять, а сразу приступим к работе.

2. Входим от ROOT и всегда от него и работаем.

3. Создадим папку cgi-bin, а в нем разместим файл hello.py с содержимым:
#!/usr/bin/python3
print("""Content-Type: text/plain

Hello, world!""")

4. Дадим этому файлу права на выполнение:
chmod a+x hello.py
66dee60b6d479447283102.png
5. Запустим этот файл прямо в папке:
python3 hello.py
66dee69f8280d155359795.png
И видим, что он работает.

6. Теперь выйдем из этой папки и запустим CGI-сервер на порту 8000:
python3 -m http.server --cgi 8000

7. Попробуем открыть веб-страницу. Страница всегда полностью пустая. Ошибок нет:
66dee87367ba3595047561.png
8. При каждый раз при обновлении пустой страницы сервер логирует ошибку:
66dee89e1244a962514983.png
Traceback (most recent call last):
File "/usr/lib/python3.12/http/server.py", line 1192, in run_cgi
os.execve(scriptfile, args, env)
PermissionError: [Errno 13] Permission denied: '/root/cgi-bin/hello.py'

Что я делаю не так?
Спасибо.
  • Вопрос задан
  • 213 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы