[Laravel] 기본 세팅 및 인스톨

[Laravel] 기본 세팅 및 인스톨 updated_at: 2024-02-05 11:40

기본 세팅 및 인스톨

환경은 ubuntu 에서 디폴트 세팅에 대한 설명입니다.

1. Install

composer create-project laravel/laravel example-app

2. configure

.env 파일에서 기초적인 몇 가지만 세팅을 하도록 하겠습니다.

APP_NAME=Laravel
APP_ENV=local
APP_KEY=base64:V8UoEsafKp/f3mxXufGE5DLQGXwmQzW27cdFIdt0dNo=
APP_DEBUG=true
APP_URL=http://localhost

....

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=
....
  • APP_NAME : 현재 어플리케이션의 명 설정
  • APP_UR : 현재 어플리케잏션의 url
  • DB_ : 사용할 db 정보 입력

3. breeze 실행 (옵션)

laravel breeze 는 회원(authentications)과 관련한 간단한 내용(로그인, 가입, 패스워드리셑, 이메일유효성, 패스워드확인등)들을 제공합니다.
모든 인스톨이 마무리되면 '/dashboard', '/login', '/register' 로 url 접근을 하시면 breeze에서 제공하는 기본적인 샘플 페이지를 보실 수 있습니다.

composer require laravel/breeze:1.9.2   // 라라벨 8.x 일경우
composer require laravel/breeze --dev   // 라라벨 최신버전일 경우
php artisan breeze:install

4. npm 설치 및 실행

기본적인 리소스(assets: js, css)등을 설치합니다.

npm install
npm run dev

5. migrate

db 설정이 완료되면 migration을 진행합니다.
라라벨에서는 기본적인 테이블들을 제공하는데 기본적인 migration 파일의 정보는 database > migrations 에 존재합니다.

php artisan migrate
  • 2014_10_12_000000_create_users_table
  • 2014_10_12_100000_create_password_resets_table
  • 2019_08_19_000000_create_failed_jobs_table
  • 2019_12_14_000001_create_personal_access_tokens_table

migragion이 완료되면 라라벨에서 제공하는 기본 테이블이 생성됩니다.
failed_jobs, migrations, password_resets, personal_access_tokens, users

Permission

인스톨 후 storage 하위의 directory 에 퍼미션 확인 (775, drwxrwxr-x)

chmod 775 app framework logs

npm

webpack.mix 를 위해 npm install을 한번 실행한다. laravel mix 참조

npm install
npm run development

기본 package 설치

아래 두개는 필요에 따라 설치를 요구하지만 함께 설치하는 것을 추천드립니다.

composer require laravel/ui  # Authentic 관련 
composer require laravelcollective/html # HTML관련

nginx configuration

server {
  listen 80;
  # listen 443 ssl;

  # ssl_certificate /your-domain.pem;
  # ssl_certificate_key /your-domain.key;

  root /your-document-path/public;

  server_name your-domain.com;
  # error_log /your-domain-nginx-error-log.error;
  # access_log /our-domain-nginx-access-log.access  main;

  location / {
    index  index.php;
    rewrite ^/(.*?)index\.php[^/] /$1? redirect; // your-domain.com/index.php/... 로 접근을 피하기 위해
    rewrite ^/(.*?)index\.php(?:/(.*))?$ /$1$2? redirect; // your-domain.com/index.php/... 로 접근을 피하기 위해

    try_files $uri $uri/ /index.php$is_args$args;
    location ~* \.php$ {
      fastcgi_pass unix:/run/php/php-fpm.sock;
      fastcgi_index   index.php;
      fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
      include         fastcgi_params;
    }
  }
}

평점을 남겨주세요
평점 : 5.0
총 투표수 : 1

질문 및 답글