Как разместить скрипт cgi python с помощью `python -m SimpleHTTPServer 8000` или` python -m CGIHTTPServer 8000`?

Когда я запускаю python -m SimpleHTTPServer 8000 или python -m CGIHTTPServer 8000 в своей оболочке, я размещаю содержимое моего текущего каталога в Интернете.

Я хочу, чтобы следующая работа cgi_script.py работала с использованием указанной выше команды в командной строке, когда я просматриваю 192.xxx.x.xx:8000/cgi_script.py

 #!/usr/bin/env python print "Content-Type: text/html" print print """\ <html> <body> <h2>Hello World!</h2> </body> </html> """ 

Но этот скрипт отображается буквально, а не только «Hello World!». часть. Btw Я изменил права доступа к файлам 755 для cgi_script.py, а также папку, в которой я размещаю ее.

  • Настройка Python simpleHTTPserver на Windows
  • socket.error: Адрес уже используется
  • Почему SimpleHTTPServer перенаправляет на? Querystring / когда я запрашиваю? Querystring?
  • Почему фоновая задача блокирует ответ в SimpleHTTPServer?
  • Использование SimpleHTTPServer для модульного тестирования
  • Чтение JSON из SimpleHTTPServer
  • Можно ли запускать python SimpleHTTPServer только на localhost?
  • Проблемы с получением SimpleHTTPRequestHandler для ответа на AJAX
  • 6 Solutions collect form web for “Как разместить скрипт cgi python с помощью `python -m SimpleHTTPServer 8000` или` python -m CGIHTTPServer 8000`?”

    Попробуйте использовать python -m CGIHTTPServer 8000 .

    Обратите внимание: вам нужно переместить скрипт в каталог cgi-bin или htbin , чтобы он мог быть запущен.

    SO не позволяет мне комментировать, поэтому я добавляю это как отдельный ответ, добавив к Rodrigo's.

    Вы можете использовать другой параметр cgi_directories который по умолчанию имеет значение ['/cgi-bin', '/htbin'] . Больше информации здесь

    Когда я столкнулся с этой проблемой, я обнаружил, что в зависимости от того, какой каталог вы используете при запуске команды python -m CGIHTTPServer 8000 получаете разные результаты. При попытке запустить команду в каталоге cgi-bin браузер продолжал возвращать исходный код сценария. как только я спустился на один уровень выше и снова запустил команду python -m CGIHTTPServer 8000 мой скрипт начал выполняться.

    @ Bentley4 -ifyou все еще не в состоянии сделать, попробуйте импортировать cgi.

    #! C: \ Python34 \ python.exe -u импортировать cgi print ("Content-type: text / html")

    НТН

    в Python3 командная строка просто

     python -http.server --cgi 8000 

    Эта работа для меня, запустите python -m CGIHTTPServer 8000 тем же уровнем меню с cgi-bin и переместите cgi_script.py в папку cgi-bin. В браузере типа http: // localhost: 8000 / cgi-bin / cgi_script.py

    Python - лучший язык программирования в мире.