본문 바로가기

내가 배운 것들/문제 해결13

[Ubuntu] https 환경으로 curl 보내기 HTTPS http 환경과 달리 https 환경에서는 curl 명령어가 정상적으로 작동하지 않는다. 주소를 제대로 적는다고 해도. 그런 여러분을 위해 curl -k 라는 기능을 준비했다. curl 명령어에서 -k 옵션은 SSL 인증 없이 작업을 수행할 수 있도록 해주는 옵션이다. curl -k https://[address]/[method] 이 명령어를 어디에 활용했냐면, 무중단배포 과정에서 curl -s http://localhost/profile을 통해 현재 활성화 되어있는 포트를 잡아내는 쉘 파일을 https가 되어도 정상작동 할 수 있도록 바꿔주어서 해결했다. [Ubuntu/Travis-CI/CodeDeploy] SpringBoot 환경 배포 자동화 환경 구축 CI/CD 하루종일 travis와 싸.. 2022. 1. 20.
[Ubuntu] 서버 시간 설정하는 방법 서버 시간 우분투 사용자랑 root계정 둘 다 timezone을 바꿨는데도 서버시간이 바뀐게 적용이 안 된다.. 그래서 찾아봤더니 아예 다른 방법을 사용해야 했다. sudo ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime 기본값 UTC로 저장되어있는 /etc/localtime을 서울 시간으로 변경해주는 명령어다. 근데 이래도 안 될 수 있다. 그럴 땐 이렇게 입력하자. sudo dpkg-reconfigure tzdata # 위 명령어 입력한 후 Asia -> Seoul에서 각 엔터 쳐서 확인 # 확인 명령어 date more /etc/timezone 2022. 1. 12.
[Redis] Redis에서 불러온 값이 for each문의 조건이 될 수 없는 문제 ObjectMapper 정확하게 이 문제인지는 알 수 없다. 처음 발생한 문제였기 때문이다. List boardMemeBestResponseDtoList = redisService.getBestMemeImgList(BEST_MEME_JJAL_KEY); List resultList = new ArrayList(); for(BoardMemeBestResponseDto boardMemeBestResponseDto : mappedList) { Board board = boardRepository.findById(boardMemeBestResponseDto.getBoardId()).orElse(null); Long boardId = boardMemeBestResponseDto.getBoardId(); Boolea.. 2022. 1. 6.
[QueryDSL] 에러 발생 - query specified join fetching, but the owner of the fetched association was not present in the select list QueryDSL 발생 에러 org.hibernate.QueryException: query specified join fetching, but the owner of the fetched association was not present in the select list [FromElement { explicit,not a collection join,fetch join,fetch non-lazy properties,classAlias= board,role=com.teamproj.backend.model.board.BoardLike.board, tableName=board,tableAlias=board1_, origin=board_like boardlike0_, columns={boardlike0_.bo.. 2022. 1. 1.
[Ubuntu/SpringBoot] Ubuntu 8080 포트를 80 포트로 포트포워딩 하기 포트포워딩 sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080 2021. 12. 29.
[SpringBoot] JPA를 이용한 Delete가 실행되지 않는 현상 화가 날 뻔한 상황 코드에는 에러가 없다. 근데 Delete가 실행이 안 된다. 왜 안 되지? 난 화가 날 뻔했다. 화가 나기 전에 해결이 되어서 다행이다. 코드는 다음과 같다. public DictLikeResponseDto likeDict(UserDetailsImpl userDetails, Long dictId) { // 로그인 체크 ValidChecker.loginCheck(userDetails); User user = jwtAuthenticateProcessor.getUser(userDetails); Dict dict = getSafeDict(dictId); /* 1. 좋아요 중일 시 : 좋아요 취소 2. 좋아요 중이 아닐 시 : 좋아요 */ boolean isLike = false; if (is.. 2021. 12. 27.