jBoss - ½Ì±Û ¼¹ö¿¡¼ µÑ ÀÌ»óÀÇ ¾ÖÇø®ÄÉÀÌ¼Ç ¼ºñ½º - 1
JBOSS - Æ÷Æ® ºÐ¸®¸¦ ÅëÇÑ ¾ÖÇø®ÄÉÀÌ¼Ç ¹èÆ÷
Virtual-Server¸¦ ÀÌ¿ëÇÏ¿© ½Ì±Û ¼¹ö¿¡¼ ¿©·¯ °³ÀÇ ¾ÖÇø®ÄÉÀ̼ÇÀ» ¿î¿µÇÒ ¼ö ÀÖ´Ù. ±×¸®°í ÀÌ Virtual-ServerÀÇ ¼³Á¤ ¹æ¹ýµµ ¿©·¯°¡Áö°¡ ÀÖ´Ù. ¾ÆÆÄÄ¡¿¡¼´Â Virtual-Host¶ó°í ºÎ¸£´Â ÀÌ ¹æ¹ýÀº ÀϹÝÀûÀ¸·Î À¥¼¹ö
¿Í WAS¼¹ö
¿¬µ¿½Ã À¥¼¹öÀÇ °¡»óÈ£½ºÆ® ±â´ÉÀ» »ç¿ëÇÏ¿© ¼³Á¤ÇÏ´Â °æ¿ì°¡ ¸¹´Ù°í ÇÑ´Ù.
¶ÇÇÑ, °¡»óÈ£½ºÆ® ¹æ¹ý Áß¿¡¼µµ IP ÁÖ¼Ò¸¦ ´Ù¸£°Ô ÇÏ´Â °ÍÀº ÇöÀç IP ÁÖ¼ÒµéÀÌ °ÅÀÇ Æ÷È »óÅÂ¶ó º°·Î ÃßõÇÏÁö ¾Ê°í Æ÷Æ® ¹øÈ£¸¦ ´Ù¸£°Ô ÇÏ´Â °Íµµ º¸¾È µîÀÇ ¹®Á¦·Î º°·Î ¼±È£ ÇÏ´Â ¹æ¹ýÀº ¾Æ´Ñ µí ÇÏ´Ù. ±¸Ãà ȯ°æ¿¡ µû¶ó ´Ù¸£°ÚÁö¸¸ ÀϹÝÀûÀ¸·Î ³×ÀÓ¼¹ö¸¦ ÀÌ¿ëÇÑ °¡»óÈ£½ºÆ® ¼³Á¤ÀÌ °¡Àå ¸¹ÀÌ »ç¿ëµÈ´Ù.
- Name-based Virtual Host
- IP-based Virtual Host
- IP Address¸¦ ´Ù¸£°Ô ¼³Á¤
- Port¸¦ ´Ù¸£°Ô ¼³Á¤
±Ùµ¥ ¾îÂîµÆµç ³ª´Â JBoss¿¡¼ °¡»ó¼¹ö¿¡¼ Port¸¦ ´Ù¸£°Ô ¼³Á¤ÇغôÙ.
JBoss AS6 ÀÌÀü ¹öÀü´ë¿Í AS7 ÀÌÈÄ ¹öÀü´ëÀÇ ¼³Á¤ ¹æ½ÄÀÌ Å©°Ô ´Þ¶óÁ³´Ù. ¾Æ·¡ »çÀÌÆ®¿¡¼ ÀÌÀü, ÀÌÈÄÀÇ ¹æ¹ýÀÌ Àß ¼³¸íµÇ¾î ÀÖ´Ù.
How to run different apps on single JBoss AS 6 instance behind different ports?
AS 7.2 standalone ¸ðµå ¿¡¼ Æ÷Æ® ºÐ¸®¸¦ ÅëÇÑ µÎ°³ ÀÌ»óÀÇ ¾ÖÇø®ÄÉÀÌ¼Ç ¹èÆ÷
$JBOSS_HOME/standalone/configuration/standalone.xml
À» ¼öÁ¤.
(+ Ç¥½Ã°¡ Ãß°¡ÇÑ ³»¿ë. ±âÈ£¸¦ ½ÇÁ¦ Æ÷ÇÔÇÏÁö ¾Ê´Â´Ù.)
- À¥ ¼ºê½Ã½ºÅÛ ºÎºÐ
<subsystem xmlns="urn:jboss:domain:web:1.4" default-virtual-server="default-host" native="false">
<connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/>
+ <connector name="http1" protocol="HTTP/1.1" scheme="http" socket-binding="http1"/>
+ <connector name="http2" protocol="HTTP/1.1" scheme="http" socket-binding="http2"/>
- À¥ ¼ºê½Ã½ºÅÛ ¾Æ·¡ ¹öÃß¾ó È£½ºÆ® ºÎºÐ
<virtual-server name="default-host" enable-welcome-root="false">
<alias name="localhost"/>
<alias name="example.com"/>
+ <rewrite pattern="^/(.*)$" substitution="/$1" flags="L">
+ <condition test="%{SERVER_PORT}" pattern="=8080" flags=","/>
+ </rewrite>
+ <rewrite pattern="^/(.*)$" substitution="/app1/$1" flags="L">
+ <condition test="%{SERVER_PORT}" pattern="=8081" flags="."/>
+ </rewrite>
+ <rewrite pattern="^/(.*)$" substitution="/app2/$1" flags="L">
+ <condition test="%{SERVER_PORT}" pattern="=8082" flags="."/>
+ </rewrite>
- ¼ÒÄϹÙÀεù ºÎºÐ
<socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">
(Áß·«)
<socket-binding name="ajp" port="8009"/>
<socket-binding name="http" port="8080"/>
+ <socket-binding name="http1" port="8081"/>
+ <socket-binding name="http2" port="8082"/>
- °¢ ¾ÖÇø®ÄÉÀ̼ǿ¡¼ÀÇ ¼³Á¤
/WEB-INF/jboss-web.xml
À» »ý¼ºÇÏ°í °¢ ¾ÖÇø®ÄÉÀ̼ǿ¡ ¸Â°Ô context-root¸íÀ» ÁöÁ¤ÇÑ´Ù.
<?xml version="1.0" encoding="UTF-8"?>
<jboss-web>
<context-root>/app1</context-root>
</jboss-web>
- Ãß°¡·Î È®ÀÎÇÒ °Íµé
»ç¿ëÇÒ Æ÷Æ®µéÀÇ ¿ÜºÎ Á¢¼Ó Çã¿ë ¿©ºÎ ¼³Á¤, Virtual Machine À§¿¡¼ µ¿ÀÛ ½Ã Æ÷Æ®Æ÷¿öµù ¼³Á¤
À§¿Í °°ÀÌ ¼³Á¤À» ¸¶Ä¡°í app
, app1
, app2
¸¦ ¹èÆ÷ÇßÀ» ¶§ ´ÙÀ½ URL·Î °¢°¢ Á¢±ÙÀÌ °¡´ÉÇÏ´Ù.
- localhost:8080/app/
- localhost:8081/app1/
- localhost:8082/app2/
JBoss ÀÇ À¥ ¼ºê ½Ã½ºÅÛ¿¡¼ Á¦°øÇÏ´Â URL RewritingÀ» »ç¿ëÇÏ¿© ƯÁ¤ URL ÆÐÅÏÀ¸·Î µé¾î¿À´Â ¿äûÀ» ¼¹ö ·¹º§¿¡¼ ¸®´ÙÀÌ·ºÆ® ó¸® Çϴµ¥, ÀÏ´Ü ±¸ÇöÀ» Çسõ±ä ÇßÁö¸¸ ¾ÆÁ÷ ÀÌÇØ°¡ ºÎÁ·ÇÏ´Ù. °ø½Ä µµÅ¥¸ÕÆ®¸¦ Âü°íÇϸé ÁÁ°Ú´Ù.
- https://docs.jboss.org/jbossweb/7.0.x/rewrite.html
- https://docs.jboss.org/jbossweb/7.0.x/config/host.html
Ãâó: http://www.iamkyu.com/90 [My Library]