IT & 개발 (51) 썸네일형 리스트형 Laravel 외래 키 삭제 처리 – onDelete() 옵션 정리 Laravel에서 테이블 간 외래 키(foreign key)를 설정할 때, 부모 테이블의 데이터가 삭제되면 자식 테이블에 어떤 영향을 줄지 설정할 수 있습니다. 이때 사용하는 메서드가 바로 onDelete()입니다.이 글에서는 Laravel 마이그레이션에서 외래 키 삭제 동작을 제어하는 방법을 간단히 소개합니다.🧨 기본 예시php복사편집$table->foreignIdFor(ProductGroup::class) ->nullable() ->constrained() ->onDelete('set null'); 위 코드는 다음을 의미합니다:product_group_id 컬럼은 product_groups 테이블의 id를 참조합니다.부모 데이터가 삭제되면 외래 키 값을 null로 변경합니다.⚙️ onDelete 옵.. Laravel Sail + Nginx 리버스 프록시 환경에서 Mixed Content 오류 해결기 Laravel을 Docker 기반의 Sail로 운영하고, Nginx를 호스트 서버(Ubuntu)에 리버스 프록시로 구성해 SSL을 적용했는데도, 브라우저에서 Mixed Content: HTTP 리소스를 요청했기 때문에 차단됨이라는 경고를 받았습니다.빌드 결과에는 HTTPS가 잘 적용되어 있었는데, 도대체 왜 이런 문제가 발생했을까요?💡 문제 상황 요약Laravel Sail은 Docker 컨테이너 내부에서 실행호스트 서버는 Nginx를 설치해 SSL(HTTPS) 적용 및 리버스 프록시 설정vite.config.js에 base: 'https://도메인/build/' 명시하고, NODE_ENV=production으로 빌드도 완료public/build/manifest.json에도 http://는 없음그럼에도 .. [SSH] 접속 오류 해결: “REMOTE HOST IDENTIFICATION HAS CHANGED!” 메시지가 떴을 때 서버에 SSH 접속을 시도했는데 아래처럼 무시무시한 경고 메시지를 본 적 있으신가요?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Someone could be eavesdropping on you right now (man-in-the-middle attack)!...Host key verification failed.처음 보는 분들은 해킹인가? 싶은 생각이 드실 수도 있습니다. 이 글에서는 이 경고 메시지가 왜 뜨는지, 실제로 위험한 .. MySQL에서 특수문자(①~⑩) 검색 및 제거하는 방법 (버전별 정리) 데이터베이스를 사용하다 보면 데이터 정제가 필요한 경우가 자주 발생합니다. 특히 사용자 입력값이나 외부 데이터에 ①②③④⑤⑥⑦⑧⑨⑩ 같은 불필요한 특수문자가 포함되어 있을 수 있습니다.이런 특수문자를 검색하고 제거하는 방법을 MySQL 8.0 이상 / 이하 버전으로 나누어 정리해 보겠습니다.MySQL 8.0 이상 사용 시MySQL 8.0 이상에서는 정규표현식 함수 REGEXP_REPLACE()와 REGEXP 검색을 사용할 수 있어 훨씬 깔끔하게 처리할 수 있습니다.1. 특수문자 포함 여부 검색SELECT * FROM your_table WHERE your_column REGEXP '①|②|③|④|⑤|⑥|⑦|⑧|⑨|⑩'; REGEXP는 해당 정규표현식에 하나라도 일치하면 해당 행을 반환합니다.2. 특수문자.. Git에서 'Permission denied' 오류 해결 방법 Git을 사용하다 보면 cannot update the ref 'refs/remotes/origin/dev': unable to append to '.git/logs/refs/remotes/origin/dev': Permission denied 오류를 만날 수 있습니다. 이는 파일 접근 권한 문제로 인해 발생하는데, 이를 해결하는 방법을 단계별로 정리해 보았습니다.1. 파일 권한 확인 및 수정우선, 문제가 발생한 파일의 소유권과 권한을 확인해야 합니다.ls -l .git/logs/refs/remotes/origin/dev결과를 확인했을 때, 파일 소유자가 현재 로그인한 사용자와 다르다면 소유권을 변경해야 합니다.sudo chown -R $(whoami) .git/또는 Git 폴더 전체에 쓰기 권한을 부여.. Fail2Ban으로 리눅스 서버 보안 강화하기 🔒 Fail2Ban이란?Fail2Ban은 리눅스 서버 보안을 강화하는 침입 방지 도구입니다. 특정 패턴(예: 로그인 실패, 404 에러, 악성 봇 탐색 등)이 감지되면 자동으로 IP를 차단하는 기능을 제공합니다. 보통 SSH, Nginx, Apache, FTP, Postfix(메일 서버) 등에서 보안 위협이 되는 IP를 차단하는 데 사용됩니다.🚀 Fail2Ban 설치 및 기본 설정✅ 1. Fail2Ban 설치Ubuntu/Debiansudo apt update && sudo apt install fail2ban -yCentOS/RHELsudo yum install epel-release -ysudo yum install fail2ban -yArch Linuxsudo pacman -S fail2ban✅ .. Laravel에서 Custom Role Middleware 만들기 Laravel에서 사용자 권한(Role)에 따라 접근을 제한하려면 기본적인 인증 미들웨어 외에 추가적인 Role 미들웨어를 구현해야 합니다. 이번 글에서는 Custom Role Middleware를 생성하고 적용하는 방법을 단계별로 설명하겠습니다.1. Middleware 생성먼저 터미널에서 아래 명령어를 실행하여 RoleMiddleware를 생성합니다.php artisan make:middleware RoleMiddleware이 명령을 실행하면 app/Http/Middleware/RoleMiddleware.php 파일이 생성됩니다.2. Role Middleware 구현app/Http/Middleware/RoleMiddleware.php 파일을 열고 아래와 같이 수정합니다.route('login'); .. 윈도우에서 하위 폴더 파일 일괄 이름 변경하는 방법 윈도우 탐색기에서 하위 폴더에 있는 파일의 이름을 일괄적으로 변경하는 것은 종종 필요한 작업입니다. 기본적으로 윈도우 탐색기에서는 이 기능을 지원하지 않지만, PowerShell을 이용하면 매우 쉽게 수행할 수 있습니다. 오늘은 PowerShell을 사용하여 하위 폴더의 파일 이름 패턴을 변경하는 방법을 소개하겠습니다. 1. PowerShell 열기먼저, PowerShell을 열어야 합니다. 시작 메뉴에서 "PowerShell"을 검색하거나, 시작 버튼을 우클릭하고 "Windows PowerShell"을 선택합니다.2. 작업할 폴더로 이동하기PowerShell이 열리면, 파일 이름을 변경하고자 하는 폴더로 이동해야 합니다. 예를 들어, C:\YourFolder 폴더로 이동하려면 다음 명령어를 입력합니다:.. 이전 1 2 3 4 ··· 7 다음