Всем добрый день!
Нужна помощь помощь с CGI-скриптом. Попытался запустить страничку с Hello world, как CGI-скрипт в виртуальной среде. С помощью утилиты pyenv организовал виртуальный каталог /home/eugene/.pyenv/versions/3.6.3/test_env. Затем, в соответствии с https://pythonworld.ru/web/cgi-1.html запустил сервер:
eugene@eu-IP-U430p:~/.pyenv/versions/3.6.3/test_env$ bin/python -m http.server –cgi
Ответ в консоли: Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) …
Открыл страничку в браузере: localhost:8000 - всё в порядке:
Directory listing for /
bin/
cgi-bin/
include/
lib/
lib64@
pyvenv.cfg
server.py
Создал папку cgi-bin, в неё поместил файл hello.py, рядом с папкой создал файл server.py/ НО при наборе localhost:8000/cgi-bin/hello.py в консоли появляется исключение:
Exception happened during processing of request from ('127.0.0.1', 50780)
Traceback (most recent call last):
File “/home/eugene/.pyenv/versions/3.6.3/lib/python3.6/http/server.py”, line 1126, in run_cgi
os.execve(scriptfile, args, env)
FileNotFoundError: No such file or directory: ‘/home/eugene/.pyenv/versions/3.6.3/test_env/cgi-bin/hello.py’
Возможно, непорядок с корневой папкой (не туда поместил папку cgi-bin с файлом server.py. Перепробовал все возможные варианты - веб-сервер не видит скрипт hello.py в папке cgi-bin. Буду рад свежим идеям!