Ваш первый шаг - понять и настроить интерфейс и привязки портов. Прежде чем мы перейдем к этому, следует уточнить, что переключатель времени выполнения -b
был активен с JBoss AS7.0.2, но не присутствовал в предыдущих выпусках AS 7. Обратитесь к следующей ссылке для получения дополнительной информации через приложение JBoss Форумы сообщества Server 7.
https://community.jboss.org/thread/168789
По вашему вопросу вам нужно будет учитывать как интерфейс, так и атрибут порта группы привязки сокетов. Предполагая, что вы используете автономный экземпляр, вы можете найти группы привязки сокетов, объявленные в файле конфигурации standalone.xml
, следующим образом.
Группы сокетов и привязки портов
<socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">
<socket-binding name="management-native" interface="management" port="${jboss.management.native.port:9999}"/>
<socket-binding name="management-http" interface="management" port="${jboss.management.http.port:9990}"/>
<socket-binding name="management-https" interface="management" port="${jboss.management.https.port:9443}"/>
<socket-binding name="ajp" port="8009"/>
<socket-binding name="http" port="8080"/>
<socket-binding name="https" port="8443"/>
<socket-binding name="osgi-http" interface="management" port="8090"/>
<socket-binding name="remoting" port="4447"/>
<socket-binding name="txn-recovery-environment" port="4712"/>
<socket-binding name="txn-status-manager" port="4713"/>
<outbound-socket-binding name="mail-smtp">
<remote-destination host="localhost" port="25"/>
</outbound-socket-binding>
</socket-binding-group>
Вы можете видеть, что коннектор http связан с портом 8080, и вы также можете видеть, что привязки портов API управления связаны с токенами java. Это значения, которые вы можете переопределить (отсюда и синтаксис "${thing:value}"
), но вы теряете способность переопределять их, если вы жестко их кодируете. Это актуально, потому что интерфейс по умолчанию - это Java-токен, позволяющий использовать переключатель -b
для его переопределения
Интерфейсы
Вот публичный интерфейс по умолчанию в файле standalone.xml
. Слово «публика» - просто относительная ручка. Вы можете «вызывать» его как угодно, только если это что-то значит для вас, и вы можете позже связать с ним группы серверов и привязки сокетов. Это отличная особенность AS 7, позволяющая объявлять набор атрибутов в одном элементе и наследовать их атрибуты в другом месте, ссылаясь на имя этого элемента.
Следующий пример позволяет вам ссылаться на интерфейс public
в другом месте без необходимости знать, каково действительное значение адреса Inet.
<interfaces>
<interface name="public">
<inet-address value="${jboss.bind.address:127.0.0.1}"/>
</interface>
</interfaces>
Получение Gooey
Вы можете изменить эти значения либо через CLI управления, либо через консоль управления (следуя указаниям рабочего процесса, лучше использовать API-интерфейсы управления и оставить XML в покое). Как и большинство графических интерфейсов, в Консоль управления проще всего перейти. Вот экран привязки сокета. Обратите внимание, что в автономном экземпляре есть только одна «группа привязки сокетов», в данном случае это группа standard-sockets
.
При необходимости вы можете редактировать привязку http
, но вам также следует подумать об интерфейсе, который вы используете для подключения к Интернету. Я собираюсь предположить, что вы настроили свой веб-сервер в соответствии со своими потребностями (что, вероятно, больше относится к apache, чем к JBoss). Вот вид консоли для настроек интерфейса.
Показывает интерфейс public
, к которому относится группа привязки standard-sockets
в файле конфигурации. Расширенные конфигурации могут использовать раздел Advanced для создания упорядоченных условий для разделения трафика. Вы даже можете включить элемент <any-address/>
, который описан в первой ссылке, которую я разместил выше.
На этих двух экранах вы сможете настроить требуемый интерфейс и привязки портов для отображения вашего приложения в Интернете.