NGinX 심볼릭 링크 트러블슈팅

문제 상황 절대 경로에서 NGinX를 재부팅하면 정상 동작했지만, 심볼릭 링크를 통해 기존 설정 서버 내부 NGinX의 설정(Config)에 특정 Server를 추가하는 작업을 수행중이었습니다. 다음과 같이 같이 NGinX의 Server 별로 sites-available파일을 생성 후, sites-enabled에 심볼릭 링크를 생성 후 연결하였습니다. # NGinX 파일서버 블록 생성 vi sites-available/file-server # 파일서버 블록 내용 작성 # 심볼릭 링크 연결 ln -s sites-enabled ./sites-available 이후 다음과 같이 nginx.conf 파일에 링크 파일(sites-enabled)을 추가했습니다. http { # ..(생략).. include sites-enabled/*; } 문제 해결 다음 스택오버플로우 게시글을 보고 문제 상황을 유추해볼 수 있었습니다. 심볼릭 링크 이해 References URL 게시일자 방문일자 작성자 Stack Overflow 2013.08.06. 2025.01.10 iamyojimbo GeeksForGeeks 2020.10.09. 2025.01.10. GeeksForGeeks

2025. 3. 11. · 1 분 · 100 단어 · Leaf

[DNS] 가비아 도메인으로 Vercel 홈페이지 배포 시 SSL 인증서 만료 해결

상황 최근, Vercel을 활용해서 배포한 홈페이지에서 SSL 인증서 만료 관련 문구가 발생했습니다. 인증서 만료일자가 오늘 이전이라 크롬으로 홈페이지 접속이 거부되었습니다. 원래 Vercel에서 자동으로 인증서를 갱신하게 되어있는데, 갱신되지 않아서 만료가 되었습니다. 원인 위 페이지 하단에서 다음과 같은 문구를 발견할 수 있었습니다. 도메인 설정이 잘못되면, 갱신이 되지 않을 수 있습니다. 도메인이 잘못 구성되어 있으면 인증서가 갱신되지 않을 가능성이 높습니다. 도메인의 구성 상태를 확인하려면 프로젝트 설정(Project settings)으로 이동한 후 도메인 섹션(Domains section)으로 이동하면 됩니다. ...

2024. 11. 20. · 2 분 · 383 단어 · Leaf

[Java] JPA detached entity passed to persist 오류 해결하기

상황 JPA를 사용해서 엔티티를 저장하는 로직에서 종종 발생하는 오류입니다. 저는 DataJpaTest를 작성하다가 em.persist(member) 메서드를 실행하면 발생했습니다. 오류 메시지 detached entity passed to persist오류 메시지는 다음과 같습니다. detached entity passed to persist: pull_up.infra.database.entity.Member jakarta.persistence.EntityExistsException: detached entity passed to persist: pull_up.infra.database.entity.Member at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:126) at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:167) at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:173) at org.hibernate.internal.SessionImpl.firePersist(SessionImpl.java:763) at org.hibernate.internal.SessionImpl.persist(SessionImpl.java:741) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:569) at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:319) at jdk.proxy3/jdk.proxy3.$Proxy148.persist(Unknown Source) at pull_up.global.entity.BaseEntityTest.testCreateAt(BaseEntityTest.java:35) at java.base/java.lang.reflect.Method.invoke(Method.java:569) at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) Caused by: org.hibernate.PersistentObjectException: detached entity passed to persist: pull_up.infra.database.entity.Member at org.hibernate.event.internal.DefaultPersistEventListener.persist(DefaultPersistEventListener.java:88) at org.hibernate.event.internal.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:77) at org.hibernate.event.internal.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:54) at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:127) at org.hibernate.internal.SessionImpl.firePersist(SessionImpl.java:757) ... 11 more 해석하기 오류 메시지(detached entity passed to persist)를 그대로 해석하면 다음과 같습니다. ...

2024. 11. 18. · 3 분 · 485 단어 · Leaf

[Java]String에서 공백 제거하기

공백 제거의 필요성 자바로 웹개발을 하다 보면, 입력값에 들어온 공백(White space)을 제거해야 할 일이 심심치 않게 있습니다. 특히, UTF-8에는 다음과 같은 다양한 공백이 있기 때문에 모든 경우의 수에 대응해야 합니다. U+0020 : 일반 스페이스 U+0009 : 탭(\t) U+000A : 줄 바꿈(\n) U+000D : 캐리지 리턴(\r) U+000C : 폼 피드(\f) U+3000 : 넓은 공백 공백 제거하기 String.trim() JDK 1.0부터 존재한 역사가 있는 메서드로, 문자열 앞뒤의 아스키 공백1을 내부 char배열에서 제거합니다. 문자열 가운데는 제거하지 않으며, 나머지 유니코드 공백도 제거하지 않습니다. ...

2024. 11. 16. · 2 분 · 306 단어 · Leaf

JPA Cascade vs Orphan Removal

개요 프로젝트를 하던 중, 엔티티 연관관계에서 cascade를 잘못 사용하여 잘못된 엔티티가 삭제되었고, 테스트가 실패하는 상황이 발생했습니다. 동일한 실수를 반복하지 않도록, 이번 기회에 JPA Cascade 개념과 Orphan Removal과는 어떠한 차이가 있는지 확인해보겠습니다. JPA(Hibernate) Cascade 먼저 Java EE 6의 가이드에는 다음과 같이 명시되어 있습니다. Java EE6 가이드의 CASCADE 설명 설명을 읽어보면 Cascade는 영속성 컨텍스트(Persistence Context)에 부모(Cascade옵션을 작성하는 엔티티)가 특정 작업을 수행할 때, 연관된 엔티티(이후 자식이라고 하겠습니다)도 같은 작업을 수행해야 함을 명시하고 있습니다. ...

2024. 5. 13. · 7 분 · 1288 단어 · Leaf