본문으로 바로가기

[Laravel] Directory 구조 이해하기

category Web/Laravel 2020. 8. 10. 17:49

프로젝트에 Laravel을 활용하면서 정리한 내용입니다.


01. Root 디렉토리

Root 
 ├─app ---------------- 애플리케이션 핵심 코드가 들어있음  
 ├─bootstrap ---------- 프레임워크의 부트스트래핑을 담당하는 app.php파일 포함  
 ├─config ------------- 애플리케이션 설정 파일 포함  
 ├─database ----------- 데이터베이스 마이그레이션, 모델 팩토리, 시딩 파일 포함  
 ├─public ------------- 애플리케이션에 진입하는 모든 request-요청들에 대한 진입점 역할과 
 │                          오토로딩을 설정하는 index.php 파일 포함  
 │                          (이미지, 자바스크립트, CSS와 같은 asset파일들을 포함)  
 │
 ├─routes ------------- 애플리케이션에서 정의된 모든 라우트 포함  
 ├─storage ------------ 컴파일된 블레이드 템플릿, 파일 기반 세션, 파일 캐시 
 │                         그리고 기타 프레임워크에서 생성된 파일들을 포함  
 ├─tests -------------- 자동화된 테스트가 포함, PHPUnit 테스트 예제 제공  
 └─vendor ------------- Composer 의존성 폴더

02. App 디렉토리

애플리케이션의 대부분의 파일들은 app디렉토리 안에 보관됩니다.

└─app  
    ├─Console ---------------- 애플리케이션의 모든 사용자 아티즌 명령어들을 포함, make:command명령어로 생성 가능  
    │  
    ├─Events ----------------- 기본적으로 존재하지 않지만 event:generate명령어로 생성 가능  
    │ 이벤트는 옵저버 구현을 제공하여 애플리케이션에서 발행하는 다양한 이벤트에 대해 리스닝할 수 있게 합니다.  
    │  
    ├─Exceptions ------------- 애플리케이션의 예외 핸들러를 포함  
    │  
    ├─Http ------------------- 애플리케이션으로 들어오는 request를 처리하는 대부분의 로직이 위치해 있음  
    │ ├─Controllers  
    │ └─Middleware  
    │  
    └─Listeners -------------- 이 디렉토리는 기본적으로 존재하지 않지만, 
    │                           event:generate나 make:listener 아티즌 명령어를 실행하는 경우 생성  
    │                           이벤트를 처리하는 클래스들을 포함  
    │  
    └─Providers -------------- 애플리케이션의 모든 서비스 프로바이더 파일 포함,  
                                 서비스 프로바이더는 애플리케이션에서 필요한 서비스들을 컨테이너에 바인딩하고,  
                                 이벤트를 등록, 애플리케이션 유입 request들을 처리하기 위해 준비되어야 하는 작업을 수행

      참고:

라라벨 코리아

 

라라벨 7.x - 디렉토리 구조

라라벨 한글 메뉴얼 7.x - 디렉토리 구조

laravel.kr

 

'Web > Laravel' 카테고리의 다른 글

[Laravel] Basic route 이해하기  (0) 2020.08.10
[Laravel] 프로젝트 시작하기 설치 및 세팅  (0) 2020.08.10