2010-02-23 2 views
5

Я новичок на серверах/хостинге и т. Д., Хотя у меня есть некоторый опыт программирования на C, Java и т. Д. Извините, если вопрос «абсурд».Развертывание пользовательской программы хостинговой службе

Недавно я купил услугу с сайта хостинга, а именно этого (hostmds). У меня есть код, который я написал на C++, и я хочу запустить его на сайте хостинга. Поэтому мой вопрос:

  • Возможно ли это, или мне нужно будет переписать все на новом языке?
  • Каким должен быть мой подход?

Редактировать: У меня есть аккаунт общего хостинга.

ответ

4

Для этого вам потребуется получить учетную запись «виртуального частного сервера». Это позволит вам скомпилировать вашу программу на хост-машине и запустить ее по существу, как если бы это была отдельная машина под вашим контролем.

Это значит, что вы будете нести ответственность за то, что у вас есть поддержка по своей собственной HTTP-серверной программе (например, Apache, если она запущена на хосте Linux/Unix), а также ваши собственные серверы баз данных и другая поддержка.

Если у вас есть учетная запись «общий хостинг» (наиболее распространенная опция с низкой стоимостью) с поддержкой SSH, вы можете скомпилировать свою программу и даже запустить ее, но вы будете подчиняться прихотям (капризным или в противном случае) администраторов вашей системы (вы можете обнаружить, что нужные вам библиотеки удалены или перемещены)

+0

+1 Хороший ответ! – Tronic

+0

Я поделился хостинговой учетной записью. Могу ли я скомпилировать свою программу на сервере? – urashima

+3

Если ваш общий хостинг разрешает доступ к SSH (то есть вы можете открыть терминал и войти в учетную запись на своем хосте), то: Возможно, вы можете запустить компилятор (т.е. gcc) с помощью исходного кода C++ и вашего хоста может иметь все библиотеки, которые вам нужно связать (статически или динамически), и ваш хост может дать вам разрешение на выполнение нового двоичного кода, создаваемого компилятором - это решения, которые принимает ваш хостинг-провайдер –

2

Что это за хостинг? Что это за приложение, это демон?

В зависимости от количества прав доступа вы можете запустить код в папке cgi-bin или через оболочку сервера.

В зависимости от ОС/компилятора, который вы использовали для написания кода, вам может потребоваться изменить некоторые действия, чтобы он работал на целевой ОС. Вероятно, вы должны добавить несколько подробностей. :)

+0

Приложение будет демон. Я использую общий хостинг. – urashima

2

Многие услуги хостинга предоставляют CGI/FastCGI/SCGI, которые могут использоваться для запуска веб-приложений C++. Тем не менее, это зависит от вашего хоста, можете ли вы на самом деле сделать это, так как может быть сложно получить двоичные файлы, созданные на какой-либо другой системе, для запуска на веб-хостинге (если вы даже можете загрузить их в первую очередь).

В службах оболочки и виртуальных серверах вы также можете запускать демоны (которые непосредственно прослушивают порт), но особенно в службах оболочки, которые вы не можете прослушивать на низких портах (0..1024) по соображениям безопасности.

Обратите внимание, что самые дешевые пакеты хостинга, как правило, допускают максимум PHP, поэтому для большего доступа вам потребуется что-то более дорогое.

Лучше спросить у хостинг-провайдера дополнительную информацию, так как эти вещи дико отличаются от хоста к другому.

+0

Итак, если я правильно понимаю, мне нужно загрузить мой бинарный файл, скомпилированный в моей ОС, в каталог CGI, верно? – urashima

+0

Бинарный файл необходимо скомпилировать для службы хостинга (его процессор, ОС, версии библиотеки и т. Д.). Вот почему это сложно, если у вас нет доступа к оболочке или, что еще лучше, виртуального сервера. – Tronic

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