WEB

[Web] ๊ธฐ์ดˆํ™˜๊ฒฝ์„ค์ •(์•„ํŒŒ์น˜ ํ†ฐ์บฃ ๋‹ค์šด๋กœ๋“œ, ์ดํด๋ฆฝ์Šค ์—ฐ๋™)

developer of the night sky 2023. 9. 19. 14:36

๐Ÿ”ป์•„ํŒŒ์น˜ ํ†ฐ์บฃ ๋‹ค์šด๋กœ๋“œ๐Ÿ”ป

ํ•ด๋‹น ๋งํฌ๋กœ ์ ‘์†ํ•œ๋‹ค.

https://tomcat.apache.org/

 

Apache Tomcat® - Welcome!

The Apache Tomcat® software is an open source implementation of the Jakarta Servlet, Jakarta Server Pages, Jakarta Expression Language, Jakarta WebSocket, Jakarta Annotations and Jakarta Authentication specifications. These specifications are part of the

tomcat.apache.org

์™ผ์ชฝ [Download] - [Tomcat9] ์„ ํด๋ฆญํ•œ๋‹ค.

 

 

๋‹ค์šด๋กœ๋“œ

์œˆ๋„์šฐ์ฆˆ ๋ฒ„์ „์— ๋งž๋Š” ํŒŒ์ผ์„ ๋‹ค์šด๋ฐ›๋Š”๋‹ค.

๋‹ค์šด๋กœ๋“œํ•œ ํ”„๋กœ๊ทธ๋žจ๋“ค์€ ํ•œ ํด๋” ๋‚ด์— ์ž˜ ์ •๋ฆฌํ•ด๋‘”๋‹ค.

C:\class\dev ํด๋”์— ๋ณด๊ด€ํ•œ๋‹ค.

 

 

๐Ÿ”ป์ดํด๋ฆฝ์Šค ์„ค์ •๐Ÿ”ป

  • ์›Œํฌ์ŠคํŽ˜์ด์Šค๊ฐ€ ๋ฐ”๋€” ๋•Œ๋งˆ๋‹ค ์„ค์ •์„ ํ•ด์ค˜์•ผํ•œ๋‹ค.
  • ์›Œํฌ์ŠคํŽ˜์ด์Šค : C:\class\code\client

 

์ธ์ฝ”๋”ฉ

  • ์•„๋ž˜ ํ˜•๊ด‘ํŽœ ํ‘œ์‹œํ•œ ๋Œ€๋กœ ์„ค์ •ํ•ด์ค€๋‹ค.

'encoding'์œผ๋กœ ๊ฒ€์ƒ‰ ํ›„ workspace ๋‚ด Text file encoding์„ 'UTF-8'๋กœ ๋ณ€๊ฒฝํ•ด์ค€๋‹ค. 

 

 

content types์˜ ์ธ์ฝ”๋”ฉ์€ "UTF-8"๋กœ ์ง์ ‘ ์ž…๋ ฅ์„ ํ•ด์•ผํ•œ๋‹ค.

 

 

Server Runtime Environments

Apache Tomcat 9.0์„ ์ดํด๋ฆฝ์Šค์— ๋“ฑ๋กํ•œ๋‹ค.(์ฐธ์กฐํ•œ๋‹ค)

์„ค์ • ๊ฒ€์ƒ‰์ฐฝ์— 'server' ๊ฒ€์ƒ‰ ํ›„ Runtime Environments์—์„œ Add๋ฅผ ํด๋ฆญํ•œ๋‹ค.

 

 

์ด ๋ชฉ๋ก์— ์—†๋Š” ์„œ๋ฒ„ ์ข…๋ฅ˜๊ฐ€ ํ›จ์”ฌ ๋งŽ๋‹ค.

 

์šฐ๋ฆฌ๋Š” Apache๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

 

 

๋‹ค์šด๋กœ๋“œ ๋ฐ›์€ Apache Tomcat 9๋ฒ„์ „์„ ์„ ํƒํ•œ๋‹ค.

 

 

 

C:\class\dev\apache-tomcat-9.0.80

์•„ํŒŒ์น˜ ํ†ฐ์บฃ์ด ๋‹ค์šด๋กœ๋“œ ๋œ ๊ฒฝ๋กœ๋ฅผ ์„ ํƒํ•ด์ค€๋‹ค.

 

 

 

ํ…Œ์ŠคํŠธ

๋ฉ”๋ชจ์žฅ์— ์•„๋ž˜ ์ฝ”๋“œ ์ž…๋ ฅ

<html>
<head>
	<title>hello<title>
</head>
<body>
	<h1>web pages</h1>
	<p>hello world</p>
</body>
</html>

 

C:\class\dev\apache-tomcat-9.0.80\webapps\ROOT

 

 

ํ†ฐ์บฃ์„ ํ†ตํ•ด (์›น)๋ฌธ์„œ ๋ฐ์ดํ„ฐ ํ†ต์‹ ํ•œ๋‹ค.

- ์„œ๋ฒ„์—ญํ•  

 

์›น ๋ฌธ์„œ๋ฅผ ๋ฐ›๊ธฐ ์œ„ํ•ด ์ ‘์†ํ•˜๋Š” ํด๋ผ์ด์–ธํŠธ : ์›น

 

 

 

๐Ÿ”ปํ†ฐ์บฃ ์‹คํ–‰๐Ÿ”ป

  •  JDK๊ฐ€ ์„ค์น˜๋˜์–ด์žˆ๊ณ , ์ž๋ฐ” ํ™˜๊ฒฝ์„ค์ •์ด ๋˜์–ด์žˆ๋Š” ์กฐ๊ฑด์ด ๋˜์–ด์•ผํ•œ๋‹ค.

์‹คํ–‰ ๋ฐฉ๋ฒ• 1

  • C:\class\dev\apache-tomcat-9.0.80\bin
  • startup.bat ๋”๋ธ”ํด๋ฆญํ•˜์—ฌ ์‹คํ–‰

 

 

์‹คํ–‰ ๋ฐฉ๋ฒ• 2

  • ํด๋” ๋นˆ๊ณต๊ฐ„์—์„œ ์šฐํด๋ฆญ ํ›„ ํ„ฐ๋ฏธ๋„ ์ฐฝ ์—ด๊ธฐ(๋ช…๋ น ์ฐฝ ์—ด๊ธฐ)

 

startup.bat ์ž…๋ ฅ ๋ฐ ์—”ํ„ฐ

 

ํ•œ๊ธ€์ด ๊นจ์ ธ๋ณด์ด์ง€๋งŒ ์ •์ƒ ์‹คํ–‰๋œ ๊ฒƒ์ด๋‹ค.

tomcat ์‹คํ–‰ ์™„๋ฃŒ

 

์„œ๋ฒ„(์•„ํŒŒ์น˜ ํ†ฐ์บฃ)์—์„œ ํด๋ผ์ด์–ธํŠธ(๋ธŒ๋ผ์šฐ์ €)๋ฅผ ํ†ตํ•ด hello.html์„ ์š”์ฒญํ•œ๋‹ค.

 

์•„๋ž˜ ๋งํฌ๋กœ ์ ‘์†ํ•œ๋‹ค.

http://localhost:8080/hello.html

 

์˜ค๋ผํด์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค๋ฉด ์ด๋Ÿฐ ์ฐฝ์ด ๋œฌ๋‹ค.

์˜ค๋ผํด์ด (1521, 8080) ํฌํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๊ธฐ์— ์•„ํŒŒ์น˜ ํ†ฐ์บฃ ํฌํŠธ์™€ ์ถฉ๋Œ์ด ๋‚œ ๊ฒƒ์ด๋‹ค.

 

ํ†ฐ์บฃ์˜ ํฌํŠธ ๋ฒˆํ˜ธ๋ฅผ ๋ณ€๊ฒฝํ•ด์ค€๋‹ค.

 

๐Ÿ”ปํ†ฐ์บฃ ํ™˜๊ฒฝ์„ค์ • ๋ณ€๊ฒฝ๐Ÿ”ป

  • ์œ„์™€ ๊ฐ™์ด ํฌํŠธ ์ถฉ๋Œ์‹œ ํ†ฐ์บฃ ํฌํŠธ ๋ฒˆํ˜ธ๋ฅผ ์ˆ˜์ •ํ•ด์ค€๋‹ค.
  • C:\class\dev\apache-tomcat-9.0.80\conf
  • server.xml ํŒŒ์ผ์„ ์ˆ˜์ •ํ•œ๋‹ค.

69๋ผ์ธ์˜ 8080 -> 8090 ์ˆ˜์ •

 

์œ„์—์„œ ์‹คํ–‰ํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ํ„ฐ๋ฏธ๋„์—์„œ startup.bat๋ฅผ ์ž…๋ ฅํ•˜์—ฌ tomcat ์‹คํ–‰ํ•œ๋‹ค.

 

๐Ÿ”ปํ”„๋กœ์ ํŠธ ์ƒ์„ฑ๐Ÿ”ป

์ดํด๋ฆฝ์Šค [file]-[new]-[other]

Dynamic Web Project

 

ํ”„๋กœ์ ํŠธ๋ช… ์ž…๋ ฅ ๋ฐ Target runtime์— ์—ฐ๊ฒฐํ•œ Apache Tomcat v9.0 ์„ ํƒํ•œ๋‹ค.

 

Context root : ํ”„๋กœ์ ํŠธ ์ด๋ฆ„

Content directory : ๋ฃจํŠธ ๋””๋ ‰ํ† ๋ฆฌ  

์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ํ‘œํ˜„์ด๋ฏ€๋กœ ๊ธฐ์–ตํ•ด๋‘ฌ์•ผ ํ•œ๋‹ค.

 

๐Ÿ”ปํด๋” ์‚ดํŽด๋ณด๊ธฐ๐Ÿ”ป

src/main/java : java ์†Œ์Šค ์ฝ”๋“œ ๋ชจ์•„๋†“๋Š” ํด๋”

src : html, css, javascript ๋“ฑ ์›น ์‚ฌ์ดํŠธ์— ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ชจ์•„๋†“๋Š” ํด๋”

 

[Hello]-[src]-[main]-[webapp]

content directory : ์ž์›์„ ๊ด€๋ฆฌํ•˜๋Š” ํด๋”(๋ธŒ๋ผ์šฐ์ €์—๊ฒŒ ์ฃผ๊ณ ์‹ถ์€ ์ž์›์„ ๊ผญ ์ด ํด๋” ๋˜๋Š” ์ด ํด๋”์˜ ํ•˜์œ„ํด๋”์— ๋„ฃ์–ด์•ผํ•œ๋‹ค.

 

 

๐Ÿ”ปhello.html ํŒŒ์ผ ์ƒ์„ฑ๐Ÿ”ป

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<h1>hello world</h1>
	<p>์•ˆ๋…•ํ•˜์„ธ์š”.</p>
</body>
</html>

 

๐Ÿ”ป์„œ๋ฒ„ ์‹คํ–‰๐Ÿ”ป

  • ์ดํด๋ฆฝ์Šค ํ•˜๋‹จ์˜ servers ํ™•์ธํ•œ๋‹ค.
  • ์•„๋ž˜์™€ ๊ฐ™์ด 'No servers are available.'๊ฐ€ ๋œฌ๋‹ค๋ฉด, ์•„์ง ์„œ๋ฒ„๋ฅผ ์กฐ์ž‘ํ•  ์ˆ˜ ์—†๋Š” ์ƒํƒœ์ด๋‹ค.

ํ•˜์ดํผ๋งํฌ๋ฅผ ํด๋ฆญํ•œ๋‹ค.

 

 

์œ„์—์„œ ์—ฐ๋™ํ•œ Tomcat v9.0 Server๋ฅผ ์„ ํƒํ•˜๊ณ  next๋ฅผ ํด๋ฆญํ•œ๋‹ค.

 

์™ผ์ชฝ : ํ†ฐ์บฃ์ด ๊ด€๋ฆฌํ•˜๊ณ  ์žˆ์ง€ ์•Š์€ ํŒŒ์ผ(์„œ๋ฒ„๊ฐ€ ์ฃฝ์—ˆ๋‹ค๊ณ  ํ‘œํ˜„)

์˜ค๋ฅธ์ชฝ : ํ†ฐ์บฃ์ด ๊ด€๋ฆฌํ•˜๊ณ  ์žˆ๋Š” ํŒŒ์ผ(์„œ๋ฒ„๊ฐ€ ์‚ด์•„์žˆ๋‹ค๊ณ  ํ‘œํ˜„)

 

 

Hello๋ฅผ ํด๋ฆญํ•œ ํ›„ Add๋ฅผ ๋ˆŒ๋Ÿฌ ํ†ฐ์บฃ์ด ๊ด€๋ฆฌํ•˜๋Š” ํŒŒ์ผ ์˜์—ญ์œผ๋กœ ์˜ฎ๊ฒจ์ค€๋‹ค.

 

Servers ์ฐฝ์˜ ์•„๋ฌด์˜์—ญ์—์„œ ์šฐํด๋ฆญ ํ›„ start๋ฅผ ํด๋ฆญํ•œ๋‹ค.

 

stopped ์ƒํƒœ์—์„œ started๋กœ ์ƒํƒœ๊ฐ€ ๋ณ€๊ฒฝ๋˜์—ˆ๋‹ค.

 

 

๋ธŒ๋ผ์šฐ์ €์— ์•„๋ž˜ ์ฃผ์†Œ๋กœ ์ ‘์†์„ ํ•œ๋‹ค.

http://localhost:8090/Hello/hello.html

Hello๋Š” context root๋ฅผ ์˜๋ฏธํ•˜๊ณ  context root๊ฐ€ ํด๋” ์ฃผ์†Œ๋ฅผ ๋†์ถ•ํ•ด์„œ ๋‹ด๊ณ  ์žˆ๋‹ค.

 

 

๐Ÿ”ป์„œ๋ฒ„ ์žฌ์„ค์ •๐Ÿ”ป

์„œ๋ฒ„ ์ฐฝ์—์„œ ์„œ๋ฒ„ ๋งํฌ๋ฅผ ๋”๋ธ” ํด๋ฆญํ•˜๋ฉด server.xml ์ด ๋„์‹ํ™”๋˜์—ฌ ๋ณด์—ฌ์ง„๋‹ค.

์œ„์—์„œ ํ†ฐ์บฃ ํฌํŠธ ๋ฒˆํ˜ธ๋ฅผ ์ˆ˜์ •ํ•œ ๊ฒƒ๋„ ์—ฌ๊ธฐ์„œ ์ˆ˜์ •๊ฐ€๋Šฅํ•˜๋‹ค.

 

 

moudles

 

Edit

context root๋ฅผ ์ˆ˜์ •ํ•˜๋ ค๋ฉด ์šฐ์ธก 'Edit'๋ฅผ ํด๋ฆญํ•˜์—ฌ Path ๋ถ€๋ถ„์„ ์ˆ˜์ •ํ•œ๋‹ค.

/test๋กœ ์ˆ˜์ •์„ ํ•ด๋ณธ๋‹ค.

 

 

 

ํŒŒ์ผ ๋‚ด์šฉ์ด ๋ณ€๊ฒฝ๋˜์—ˆ์œผ๋ฏ€๋กœ ์ €์žฅ์„ ๊ผญ ํ•ด์ค€๋‹ค.

 

 

 

๐Ÿ”ป์„œ๋ฒ„ ์žฌ์‹œ์ž‘(Restart)๐Ÿ”ป

  • ์„œ๋ฒ„ ์ฐฝ ์•„๋ฌด๊ณณ์— ์šฐํด๋ฆญ ํ›„ restart๋ฅผ ํด๋ฆญํ•œ๋‹ค.

๋ณ€๊ฒฝ๋œ ์ฃผ์†Œ๋กœ ์ ‘์†์ด ์ž˜๋œ๋‹ค.

 

 

 

๐Ÿ”ปAdd and Remove๐Ÿ”ป

  • ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ(์‚ฌ์ดํŠธ) ์„œ๋ฒ„ ์—ฐ๊ฒฐ์„ ํ•œ๋‹ค.
  • ์„œ๋ฒ„ ์ฐฝ ์•„๋ฌด๊ณณ์—์„œ ์šฐํด๋ฆญ์„ ํ•˜์—ฌ Add and Remove๋ฅผ ํด๋ฆญํ•œ๋‹ค.

์•ˆ์“ฐ๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ๋นผ์ฃผ๊ณ  ์‚ฌ์šฉํ•  ํ”„๋กœ์ ํŠธ๋ฅผ ๋„ฃ์–ด์ค€๋‹ค.