Запуск скрипта python на моем хостинге

Я новичок в веб-разработке и Python. Поскольку у меня нет словарного запаса, чтобы задать точный вопрос, вот краткое изложение того, что нужно сделать:

  • У меня есть небольшой тестовый скрипт Python cgi, который я загрузил в /home/username/pyscripts, который находится над /home/username/domain.com.

  • Мне нужна ссылка, которую я могу ввести в строке URL, что приведет к выполнению сценария и отображению содержимого в браузере.

Может ли кто-нибудь сказать мне, нужно ли мне создать html-файл, и если да, то как заставить его указывать на скрипт python. В папке домена установлен wordpress. Мой хостинг - виртуальный хостинг dreamhost

Скрипт там ниже:

#! /usr/bin/python

print 'Content-type: text/html'
print ''
print 'Hello, World!

person kmcodes    schedule 26.06.2014    source источник


Ответы (3)


Обычно вам нужно поместить свой скрипт Python в папку /home/username/bin/. Я не уверен, действительно ли ваш конкретный веб-хост позволяет вам запускать скрипт Python вне папки /bin (обычно это не так), но если да, то вы можете заменить папку /pyscripts.

URL-адрес будет выглядеть примерно так: www.domain.com/bin/mypythonscript.py.

Или в папке pyscripts (если возможно на вашем веб-хостинге): www.domain.com/pyscripts/mypythonscript.py

Вам не нужно создавать HTML-файл, поскольку первая строка содержимого, которую вы печатаете в своем скрипте Python, указывает браузеру пользователя отображать вывод скрипта в виде HTML-файла. Вы просто вводите URL-адрес своего скрипта Python в свой браузер, а затем сервер запускает скрипт и выводит его в виде текстового/HTML-файла, который ваш браузер затем читает и отображает.

Кроме того, не забывайте — вам необходимо предоставить разрешение на выполнение/чтение/запись вашему файлу скрипта Python после того, как вы загрузите его в правильную папку на вашем веб-сервере, иначе он вообще не запустится. Обычно это делается с помощью утилиты загрузки, такой как Filezilla, или с помощью команды оболочки, например chmod.

person Alium Britt    schedule 26.06.2014
comment
Dreamhost позволяет запускать из любого каталога. Проблема в том, что папка находится на том же уровне, что и папка domain.com (из соображений безопасности рекомендуется, чтобы папка scripts не была подкаталогом). Поэтому использование ссылки дает мне ошибку «Страница не найдена». - person kmcodes; 27.06.2014
comment
Я бы связался с вашим веб-хостингом и спросил их, как определить подходящий URL-адрес для вашего файла - у них может даже быть FAQ, в котором говорится, как найти URL-адрес, если они рекомендуют поместить его вне папки с доменным именем. Если вы хотите просто проверить, работает ли ваш файл и можете ли вы запускать сценарии, попробуйте поместить его в папку /bin, а затем снова попробуйте URL-адрес, который я разместил выше. Затем вы можете продолжить кодирование и тестирование, пока ваш веб-хост не даст вам ответ. - person Alium Britt; 27.06.2014

Heroku — хорошее место для размещения скриптов и Python.

Предварительно

pythonscripts.py
procfile
requirements.txt

и После добавления зафиксируйте и отправьте сценарии в приложение heroku. Просто запустите следующую команду на терминале, чтобы запустить скрипты.

heroku run python your_scripts.py

Больше, если вы хотите запускать эти скрипты по расписанию. затем heroku предоставляет множество дополнений. просто поищи на хероку

person Muhammad Taqi    schedule 23.01.2015

Хост мечты поддерживает Python. Проверьте, предоставляют ли они развертывание доступа к оболочке. Все, что вам нужно, это создать файл .py и запустить его.

Затем рассмотрите возможность использования Django или Jinja2 в качестве фреймворка. Это легко для создания веб-приложения

person Raja Simon    schedule 26.06.2014
comment
Позвольте мне попробовать это решение. Я надеялся избежать использования Django, поскольку мне в первую очередь нужен файл python для создания вывода по запросу для визуализации Google. - person kmcodes; 27.06.2014
comment
Пока вы можете просто придерживаться ванильного Python — вам не нужны никакие рамки для того, что вы просите. Как только вы достаточно хорошо изучите обычный Python и обнаружите, что он не соответствует вашим потребностям, вам следует перейти к различным фреймворкам. - person Alium Britt; 27.06.2014