2014-02-04 3 views
-6

http://www.tutorialspoint.com/python/python_cgi_programming.htmПытаясь понять установки CGI скрипт

#!/usr/bin/python 

print "Content-type:text/html\r\n\r\n" 
print '<html>' 
print '<head>' 
print '<title>Hello Word - First CGI Program</title>' 
print '</head>' 
print '<body>' 
print '<h2>Hello Word! This is my first CGI program</h2>' 
print '</body>' 
print '</html>' 

Какое значение #!/usr/bin/python

Он говорит, чтобы сохранить файл как hello.py и сохранить его в /var/www/cgi-bin каталоге, но у меня нет этого каталога, я должен его создать?

Перед запуском программы CGI убедитесь, что у вас есть режим изменения файла с помощью команды chmod 755 hello.py UNIX, чтобы сделать исполняемый файл.

но где (как выполнить) команду chmod? следует ли включать $chmod 755 "/location of hello(.py).../" в hello.py?

+1

Пожалуйста, используйте более заголовок вопроса; большинство вопросов просят что-то объяснить. –

+1

Учимся писать сценарии CGI в 2014 году, это глупо. Используйте инфраструктуру WSGI. – geoffspear

+0

извините за просьбу, как noob .. Я изучаю кодирование как хобби .. улучшит себя .. спасибо за предложение wsgi framework .. заглянем в него .. спасибо – Nikhil

ответ

0

Вы должны включить строку #!/usr/bin/python в систему * nix, чтобы сообщить оболочке, как интерпретировать этот скрипт и где ваш интерпретатор находится в системе. Это называется линией shebang.

Команда chmod 755 hello.py - это команда оболочки unix, позволяющая сменить permissionson файла и сделать его исполняемым. Сделав это, вы можете запустить скрипт без необходимости делать python hello.py, но вместо этого ./hello.py.

Насколько я понимаю, вы являетесь пользователем Windows. В этом случае вам не обязательно все это делать. Просто сохраните файл как hello.py и все.

Это сообщение на tutorialspoint.com означает, что у вас уже есть запустить сервер HTTP, который поддерживает CGI и имеет веб-умолчанию каталог /var/www/

+0

Спасибо .. да я согласен .. как у меня нет http сервер будет работать. Я в основном проигнорирую эту часть учебника от tutorialspoint.com ..thanks для указания – Nikhil

0

Линия #!/usr/bin/python является сигналом к ​​оболочке (программа, которая обрабатывает клавиатуру вводит и запускает команды для вас), что этот файл является скриптом, который может обрабатываться показанной программой. Это называется «shebang» или «hashbang».

В этом случае shebang сообщает вашей полке, чтобы запустить программу, которую она находит в /usr/bin/python, и отправить этот скрипт на нее. Есть еще here

chmod является общей командой для установки разрешений на файлы. Вы выполняете его из командной строки, как любая другая команда. Числовые значения для разрешений могут быть немного загадочными, но они состоят из двоичных битов, которые указывают определенные разрешения. Изменение разрешения на 755 указывает, что владелец файла может выполнить это как программу, а не просто рассматривать его как блок текста. Лично я предпочитаю описать mor chmod u+x filename - добавьте выполнение для пользователя.

Вы можете найти более полное описание chmodhere

+0

u + x абсолютно бесполезен для сценария CGI; владелец файла почти наверняка не будет являться пользователем веб-сервера.Это не «описательнее», поскольку это означает нечто совершенно отличное от 755. – geoffspear

Смежные вопросы