Backend17
- Laravel 운영 서버에서 env() 함수가 null을 반환하는 이유
Laravel 프로젝트를 운영 서버에 배포한 후, 이상한 현상을 경험했습니다. 분명 .env 파일에 FILESERVER_HOST 값이 설정되어 있는데, 화면에서는 빈 문자열이 출력되었습니다. 더 이상한 건 DB 연결은 정상적으로 작동한다는 점이었죠.t…
- MySQL 타임존 SYSTEM 설정과 UTC 저장 문제 해결하기
MySQL 쓰다 보면 SELECT @@global.time_zone, @@session.time_zone; 결과가 SYSTEM으로 나오는데, 막상 DB에 저장된 TIMESTAMP 값을 보면 UTC 기준으로 들어가 있는 당황스러운 상황, 겪어보셨나요? …
- Prisma로 Next.js 블로그 만들기: 데이터베이스 설정부터 마이그레이션까지
PostgreSQL과 Next.js로 블로그를 만들면서 Prisma ORM을 처음 도입하게 되었습니다. MySQL을 주로 사용하던 입장에서 새로운 도구를 배우는 과정에서 겪은 시행착오와 해결 방법을 공유합니다. Prisma는 Node.js와 TypeS…
- Sequelize vs Prisma: Node.js ORM 비교 분석
Node.js 생태계에서 가장 많이 사용되는 두 ORM인 Sequelize와 Prisma를 비교합니다. 두 도구는 근본적으로 다른 철학과 접근 방식을 가지고 있습니다. Sequelize는 Laravel의 Eloquent처럼 모델 클래스를 직접 작성하는…
- MySQL vs PostgreSQL 차이점 비교 - 프로젝트에 맞는 DB 선택 기준
오늘은 두 데이터베이스의 차이점을 실제 사용 경험을 바탕으로 상세히 비교해보겠습니다! 특징 MySQL PostgreSQL MySQL은 일반적으로 필요한 데이터 타입들을 제공합니다. PostgreSQL은 훨씬 더 다양한 데이터 타입을 제공합니다. 실제 …
- Laravel Queue Worker 완벽 가이드: 비동기 작업 처리의 핵심
웹 애플리케이션을 개발하다 보면 시간이 오래 걸리는 작업들을 만나게 됩니다. 이메일 발송, 이미지 처리, 데이터 분석, 외부 API 호출 등이 대표적인 예시죠. 이런 작업들을 동기적으로 처리하면 사용자는 오랫동안 기다려야 하고, 최악의 경우 브라우저 …
- Laravel 외래 키 삭제 처리 – onDelete() 옵션 정리
Laravel에서 테이블 간 외래 키(foreign key)를 설정할 때, 부모 테이블의 데이터가 삭제되면 자식 테이블에 어떤 영향을 줄지 설정할 수 있습니다. 이때 사용하는 메서드가 바로 onDelete()입니다. 이 글에서는 Laravel 마이그레…
- MySQL에서 특수문자(①~⑩) 검색 및 제거하는 방법 (버전별 정리)
데이터베이스를 사용하다 보면 데이터 정제가 필요한 경우가 자주 발생합니다. 특히 사용자 입력값이나 외부 데이터에 ①②③④⑤⑥⑦⑧⑨⑩ 같은 불필요한 특수문자가 포함되어 있을 수 있습니다. 이런 특수문자를 검색하고 제거하는 방법을 MySQL 8.0 이상 …
- Laravel에서 Custom Role Middleware 만들기
Laravel에서 사용자 권한(Role)에 따라 접근을 제한하려면 기본적인 인증 미들웨어 외에 추가적인 Role 미들웨어를 구현해야 합니다. 이번 글에서는 Custom Role Middleware를 생성하고 적용하는 방법을 단계별로 설명하겠습니다. 먼…
- Flask 포트 변경 방법 - VSCode launch.json 설정 완전 정리
Flask는 Python으로 웹 서버를 빠르게 구성할 수 있는 강력한 프레임워크입니다. VSCode(Visual Studio Code)와 함께 Flask 애플리케이션을 디버깅할 때, 서버가 실행되는 포트를 원하는 대로 설정하는 것이 중요합니다. 이 글…
- Laravel에서 increment() 메서드 사용 시 즉시 업데이트되지 않는 문제 해결하기
Laravel 개발자들이 자주 마주치는 문제 중 하나는 increment() 메서드를 사용했을 때 값이 즉시 업데이트되지 않는 현상입니다. 이번 포스트에서는 이 문제의 원인과 해결 방법에 대해 알아보겠습니다. increment() 메서드를 사용했는데 …
- Laravel에서 데이터 정렬하기: orderBy 메소드 활용하기
웹 애플리케이션을 개발할 때, 데이터베이스에서 원하는 정보를 효율적으로 정렬하는 것은 매우 중요합니다. Laravel은 직관적인 Eloquent ORM(Object-Relational Mapping)을 사용하여 데이터베이스 작업을 단순화해줍니다. 이번…
- 특정 버전의 Composer 설치
관리중인 시스템 중 php 기반의 laravel 5.x 를 사용하고 있는 시스템이 있습니다. 오래된 버전이다보니, php 버전도 낮은데요! php 버전이 낮으면 composer 2.x 버전에서는 install이 되지 않는 문제가 발생합니다. 그래서 c…
- 라라벨에서 커스텀 helper 등록하기
Laravel에서 커스텀 헬퍼를 등록하는 방법은 다음과 같습니다. 헬퍼는 자주 사용하는 기능을 간편하게 사용할 수 있도록 도와주는 유틸리티 함수입니다. 먼저, 헬퍼 파일을 생성합니다. Laravel의 app 디렉터리 안에 Helpers라는 디렉터리를 …
- Laravel의 whereJsonContains 메서드: JSON 데이터 필터링의 강력한 도구
Laravel은 PHP 프레임워크 중 하나로, 웹 애플리케이션 개발을 더 쉽게 만들어주는 다양한 기능을 제공합니다. 그중 하나가 whereJsonContains 메서드로, JSON 필드에서 특정 값을 필터링하는 데 유용하게 사용됩니다. 이 글에서는 w…
- 라라벨 Sail 설정 가이드
라라벨 Sail은 라라벨 프레임워크를 사용하여 웹 애플리케이션 개발을 위한 도구입니다. Sail은 Docker를 기반으로 동작하며, 컨테이너 기술을 사용하여 개발 환경을 구성합니다. 이를 통해 개발자는 별도의 환경 설정 없이 라라벨 프로젝트를 빠르게 …
- [Laravel] log permission denied
laravel server 운용중 아래와 같은 에러 발생 로그 파일을 write 할 권한이 없다는 오류. 원인은 라라벨 스케쥴러를 crontab 으로 등록할 때 root user로 등록해서, root user가 생성한 log 파일을 서버 실행 유저 (…