Как разместить крошечное приложение RESTful, написанное на Java/C#/Python?
Я хочу написать крошечный RESTful- сервер на каком-нибудь языке, который может работать на Ubuntu 10.04, но я не знаю, как его разместить.
В настоящее время у меня есть VPS на Linode.com (Disclaimer: код реферала) с nginx, возможно, у меня работает Apache, но он не настроен правильно и работает для некоторых общедоступных веб-сайтов (Wordpress).
Означает ли это, что порт 80 занят? Как мне разместить мое приложение, чтобы иметь возможность обрабатывать URL-адреса, например, http://myip/User/Zolomon?
Должен ли я каким-то образом общаться с nginx, так как полагаю, что именно он обрабатывает URL?
1 ответ
Сначала вам нужно выяснить, занят ли порт 80. Вероятно, учитывая, что вы используете NGINX (и, возможно, Apache), порт 80 уже используется на этой машине. Вы можете легко это выяснить, запустив netstat
следующий фрагмент даст вам список портов, которые в настоящее время используются на вашем сервере.
netstat -lnt | grep -v tcp6 | awk '{ print $4 }' | awk -F':' '{ print $2 }' | sort -n
Должен произвести что-то вроде этого:
22
25
53
80
631
1337
Не зная, как именно вы написали это приложение RESTful, будет сложно сказать, как его подключить. Если он поставляется в комплекте с собственным автономным веб-сервером или если вы используете что-то вроде Tomcat, C# WebServer или Cherrpy; тогда вам нужно будет настроить приложение на использование порта, отличного от указанного в выводе команды. Некоторые популярные альтернативные веб-порты 8080
, 8081
и большинство значений в 9000
спектр. После того, как вы измените этот порт в конфигурации приложений и запустите его, вы сможете получить к нему доступ по адресу http://youip:PORT/User/Zolomon
где PORT
это номер, который вы выбрали.
Если это приложение, для которого необходимо установить программное обеспечение веб-сервера, вам необходимо настроить определение виртуального хоста в NGINX или Apache (в зависимости от того, что вы используете), чтобы приложение запускалось при доступе к нему через http://youip/User/Zolomon
но, по-видимому, установка специфических особенностей для этого выходит за рамки вопроса, который вы задали.