Как разместить скрипт на языке Python CGI с `питон -м SimpleHTTPServer 8000 " или " питон -м 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!" часть. Кстати, я изменил разрешения файла на 755 для cgi_script.py а также папку, из которой я его размещаю.
6 ответов
попробовать python -m CGIHTTPServer 8000
.
обратите внимание, что вы должны переместить скрипт в cgi-bin
или htbin
каталог для того, чтобы быть runnable.
поэтому не позволяет мне комментировать, поэтому я добавляю это как отдельный ответ, дополнение к Родриго.
Вы можете использовать другой параметр cgi_directories
значение по умолчанию ['/cgi-bin', '/htbin']
. Подробнее здесь
когда я столкнулся с этой проблемой, я обнаружил, что в зависимости от того, в каком каталоге вы находитесь, когда вы запустите python -m CGIHTTPServer 8000
команда дает разные результаты. При попытке выполнить команду в то время как в каталоге cgi-bin браузер продолжал возвращать необработанный код сценария. после того, как я КР ЕД на один уровень выше и управлял python -m CGIHTTPServer 8000
команда снова мой скрипт начал выполняться.
@Bentley4-если вы все еще не в состоянии сделать, попробуйте импортировать cgi.
#!C:\Python34\python.exe-u импорт cgi печать ("Content-type:text/html")
HTH
эта работа для меня, запустить python -m CGIHTTPServer 8000
команда того же уровня меню с cgi-bin и перемещение cgi_script.py в папку cgi-bin.В браузере введите http://localhost:8000/cgi-bin/cgi_script.py