Фреймворк C++ Wt на сервере Ubuntu

Я пытаюсь использовать структуру С++, например Wt, на сервере Ubuntu, чтобы попытаться запустить программы на С++. Я провел последние восемь часов, изучая различные фреймворки и пытаясь заставить Wt-фреймворк работать на моем сервере Ubuntu 16.04. Итак, я загружаю фреймворк на свой сервер и могу заставить один из их примеров (например, hello) работать на виртуальной машине. Когда я пытаюсь заставить один из их примеров работать на моем сервере и пытаюсь просмотреть приложение, я не могу.

Итак, на моей виртуальной машине все, что мне нужно сделать, это запустить программу/приложение, а затем ввести в веб-браузере http:/0.0.0.0:8080. Для своего сервера я пробую то же самое, но заменяю 0 своим IP-адресом, а затем 8080, ничего не происходит. Как я могу увидеть свою программу и не запускать ее каждый раз на моем сервере, а затем вводить специальный URL-адрес.

Может ли кто-нибудь указать мне в правильном направлении или сказать мне, что я делаю неправильно?

Спасибо


person AaronV77    schedule 13.03.2017    source источник


Ответы (2)


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

Первый шаг — убедиться, что веб-приложение действительно работает, когда вы пытаетесь подключиться к нему из браузера. Если он не запущен, очевидно, вы не сможете к нему подключиться.

Кроме того, вы можете прочитать выходные данные консоли из веб-приложения, когда 1) вы запускаете приложение и 2) когда вы пытаетесь подключиться к приложению, чтобы помочь определить причину вашей проблемы.

Вы говорите «ничего не происходит», когда пытаетесь подключиться к веб-приложению на своем сервере через браузер. Что-то должно происходить, даже если происходит сбой подключения: попытка подключения не удалась? Время соединения истекло? Вы получаете страницу с ошибкой в ​​ответ на http-запрос?

Другие вещи, которые нужно проверить, — это проблемы с инфраструктурой, такие как брандмауэры, настройки маршрутизатора между вашим браузером и сервером и т. д. Можете ли вы запустить веб-сервер, такой как Apache или nginx, на том же сервере и подключиться к нему?

Дополнительная информация поможет определить причину вашей проблемы. Каков консольный вывод веб-приложения при выполнении? Какие параметры передаются веб-приложению в вашей команде? Что происходит на стороне клиента при попытке подключения?

person Wes    schedule 13.03.2017
comment
Здесь не хватило места в поле для комментариев, поэтому я просто разместил его как ответ выше. - person AaronV77; 13.03.2017

Скорее всего, ваше приложение работает, но некоторые настройки брандмауэра блокируют доступ к порту 8080.

Чтобы проверить, работает ли ваше приложение и прослушивает ли его, запустите netstat -na | СЛУШАТЬ. Должен быть процесс, прослушивающий адрес 0.0.0.0 на порту 8080 (адрес также может быть общедоступным IP-адресом вашего сервера).

person user52875    schedule 28.03.2017