본문 바로가기

WEB34

CentOS Apache 설치, 실행하는 방법 Linux에서 Apache 설치, 실행하기 Apache 설치 Apache를 설치하기전에 기존 아파치가 설치 되어있을수도 있으니 먼저 확인합니다. rpm -qa | grep httpd 설치가 안된것을 확인후에 아파치를 설치합니다. 설치 경로는 /etc/httpd 에 생성됩니다. yum install httpd Apache 설치후 작업 방화벽 설정 Apache가 외부에서 접근할 수 있도록 방화벽 설정을 변경해야 합니다. firewall-cmd --permanent --zone=public --add-service=http firewall-cmd --permanent --zone=public --add-service=https firewall-cmd --reload CentOS8, Redhat8 부터는 다음과.. 2023. 12. 8.
[Spring] 웹소켓(Websocket) 1:1 통신, HandshakeHandler [Spring] 웹소켓(Websocket) 응용 1:1 통신 웹소켓 1:1 통신, @SendToUser 지난번에 작성했던 웹소켓 가이드에서는 서버에 연결된 모든 클라이언트들과 통신하는 방법에 대해 설명했었습니다. 이번에는 1:n이 아닌 1:1 통신에 대해 설명해보겠습니다. 웹소켓을 처음 학습한다면 [Spring] 웹소켓(Websocket) 개념과 예제 글을 먼저 보시기 바랍니다. 웹소켓으로 1:1 통신을 하기 위해서는 @SendTo어노테이션이 아닌 @SendToUser어노테이션을 사용해서 컨트롤러를 구성합니다. @SendToUser는 WebSocket을 사용하여 특정 클라이언트에게 메시지 전달기능을 구현할수 있게 하는 어노테이션입니다. 1:N 방식에서 사용하던 @SendTo는 같은 주제(topic)를 구.. 2023. 9. 5.
[Spring] 웹소켓(Websocket) 개념과 예제 [Spring] 웹소켓(Websocket) 개념과 예제 웹소켓(Websocket) 이란 이미지 출처: https://www.vaadata.com/blog/websockets-security-attacks-risks/ 웹소켓(WebSockets)은 양방향 통신을 지원하는 네트워크 프로토콜로, 클라이언트와 서버 간의 실시간 데이터 전송을 위해 사용됩니다. 기존의 HTTP 프로토콜은 클라이언트가 서버에 요청을 보내고 서버가 응답을 반환하는 단방향 통신을 지원하였지만, 웹소켓은 이와 달리 양방향 통신을 가능하게 해줍니다. 웹소켓은 주로 웹 애플리케이션에서 실시간 통신을 구현하는 데 사용되며, 대부분의 최신 브라우저와 서버 측 언어에서 지원됩니다.JavaScript를 사용하여 클라이언트 측에서 웹소켓을 다루는 것.. 2023. 8. 11.
HTTP 상태코드의 종류와 의미 HTTP 상태코드 (1xx, 2xx, 3xx, 4xx, 5xx) 의미 HTTP 상태코드 종류 HTTP의 상태코드란 클라이언트가 보낸 요청에 대해 처리 상태를 알려주는 기능입니다. 상태코드는 크게 5가지 타입이 존재하며 각 타입은 다음과 같은 의미를 가지고 있습니다. 1xx(정보): 서버가 요청을 수신했으며 계속 처리 중임을 나타내는 중간 응답입니다. 2xx(성공): 클라이언트의 요청이 성공했음을 나타냅니다. 3xx(리디렉션): 클라이언트가 요청을 완료하기 위해 리디렉션과 같은 추가 작업을 수행해야 함을 나타냅니다. 4xx(클라이언트 오류): 누락되거나 잘못된 매개변수와 같은 클라이언트 요청으로 오류가 있음을 나타냅니다. 5xx(서버 오류): 요청을 처리하는 동안 서버 측에서 오류가 발생했음을 나타냅니다... 2023. 5. 17.
HTTP 메서드의 안전, 멱등, 캐시가능 개념 이해하기 HTTP 메서드(GET/POST...)와 안전, 멱등, 캐시가능 개념 HTTP API란 HTTP API는 HTTP 프로토콜을 사용하여 인터넷을 통해 통신하는 방법입니다. 일반적으로는 클라이언트에서 서버측으로 요청을 보낸후에 응답을 다시 받을수있는 엔드포인트의 집합으로 구성됩니다. 웹 애플리케이션 및 기타 네트워크 소프트웨어 시스템을 구축하는 데 널리 사용되고 서로 다른 소프트웨어 구성 요소가 표준화된 방식으로 데이터를 통신하고 교환할 수 있습니다. HTTP API의 장점 HTTP API는 HTTP를 지원하는 모든 프로그래밍 언어 또는 플랫폼과 함께 사용할 수 있으므로 플랫폼 독립적이다. HTTP 및 웹 프로그래밍에 대한 기본 지식만 있으면 되므로 상대적으로 구현하기 쉽다. 증가된 트래픽을 처리하기 위해 .. 2023. 4. 23.
HTTP 기본개념 (HTTP/1.1, Stateful, Stateless, 비연결성, 지속연결) HTTP 기본개념 (HTTP/1.1, Stateful, Stateless, 비연결성, 지속연결) HTTP(Hypertext Transfer Protocol)는 인터넷에서 웹페이지와 같은 리소스를 전송하기 위한 프로토콜입니다. HTTP는 클라이언트와 서버 간에 요청과 응답을 전송하며, 일반적으로 웹 브라우저에서 사용됩니다. 전송되는 데이터의 종류는 우리가 주로 사용하는 이미지, 텍스트, 영상 뿐만아니라 json, xml 등등 모든 형태의 데이터를 전송할수 있습니다. HTTP 버전 HTTP/0.9 HTTP의 초기버전으로 단순히 HTML 문서를 전송하는 용도로 사용되었습니다. GET 메소드만 지원했으며, 응답 메시지는 HTML 문서 자체였고 HTTP 헤더는 없었습니다. HTTP/1.0 HTTP/0.9에서 발전.. 2023. 2. 28.
[HTTP] URI와 웹브라우저의 요청 흐름 (URL, URI, URN, TCP/IP패킷) [HTTP] URI와 웹브라우저의 요청 흐름 URI는 Uniform Resource Identifier의 약자로 통합 자원 식별자 라는 의미입니다. URI 뿐만 아니라 URL이라는 단어도 많이 들어보았을텐데 URL, URL 추가로 URN은 서로 어떤관계이며 어떤 의미를 가지고 있는지 대해 알아보겠습니다. URI URI는 로케이터(Locater) 또는 이름(Name) 으로 분류되거나 둘다로 분류될수 있습니다. 일반적으로 URN은 잘 사용되지않고 URL을 주로 사용하므로 URI, URL는 동일한 개념으로 볼수 있습니다. Uniform : 리소스를 식별하는 통일된 방식 Resource : 자원, URI로 식별할수 있는 모든것 Identifier : 다른 항목과 구분하는데 필요한 정보 URL 의미와 구조 URL.. 2023. 2. 27.
[HTTP] 인터넷과 네트워크의 기본 개념 (IP, TCP/UDP, PORT, DNS) [HTTP] 인터넷과 네트워크 인터넷을 이용하면 물리적으로 얼마나 멀리 떨어져있든지 간에 우리는 컴퓨터나 스마트폰을 통해 통신할수 있습니다. 지금까지 Spring을 포함해 다른 프레임워크 혹은 다른 언어로 개발했던 API 서버들 역시 인터넷을 통해 서비스를 제공하고 있는데 우리가 이렇게 인터넷으로 통신할수 있는 원리와 내부적으로 사용되는 기본 개념들에 대해 알아보겠습니다. 1. IP(Internet Protocol) 우리가 흔히 말하는 IP란 인터넷 프로토콜의 약자입니다. IP의 역할은 인터넷에서 단말기끼리 통신할때 각각의 지정된 IP주소로 데이터를 전달하기 위해 사용됩니다. 이때 전달되는 데이터의 단위는 패킷(Packet) 이라는 통신 단위로 전달합니다. IP패킷의 규격은 출발지 IP, 목적지 IP, .. 2023. 1. 31.