서버를 AWS에서 Cafe24로 변경하여 이전작업 중,
언젠가 또 이전 할 일이 있지 않을까.. 매번 구글링하기도 귀찮고 어려워서 쓰는 나만의 가이드
cafe24 클라우드 서버
m2.large(4/ 4GB / 30GB)
Ubuntu 18.041. PHP 및 Laravel 필요 패키지 설치
항상 최신버전으로 맞추는 습관을 들이자.
sudo apt update
sudo apt upgrade
* 업그레이드 하는데에도 꽤 시간이 걸렸다.
이전에 쓰던 laravel 버전이 7.3에 맞춰져 있었고, 8.0으로 넘어가면 지원하지 않는 패키지들이 있었기 때문에
계속 php7.3버전을 쓰기로 결정
sudo apt-get install php7.3
sudo apt-get install php7.3-mbstring
sudo apt-get install php7.3-curl
sudo apt-get install php7.3-mysql
sudo apt-get install php7.3-xml
sudo apt-get install php7.3-xmlrpc
sudo apt-get install php7.3-gd
sudo apt-get install php7.3-imagick
sudo apt-get install php7.3-zip
sudo apt-get install php7.3-dev libmcrypt-dev gcc make autoconf libc-dev pkg-config
sudo pecl install mcrypt-1.0.1
Composer은 PHP의 종속성 관리자이며 모든 Laravel 구성 요소를 설치하는데 사용
(가끔 composer설치에 엄청 긴 코드들을 사용하는 경우가 있던데, 나는 이 코드 한줄로 해결!)
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
curl과 함께 설치프로그램을 다운로드하고 파일을 /usr/local/bin으로 이동시킨다.
composer --version
위 코드를 입력하면 현재 composer의 버전을 확인할 수 있다.
composer이 설치 되어 있지 않으면 오류가 뜬다!
git을 install한 뒤, github에 올려져있던 코드를 clone해서 가져온다.
보통 위치는 /var/www/ 밑으로 가져온다.
sudo apt-get install git
git clone [REPO_URL] /var/www/
.gitignore로 인해 git에 올려지지 않은 필수 파일들을 생성한다.
나는 이부분을 생성해주지 않아 한참을 헤멨다..ಥ_ಥ
.env.example을 복사해서 .env 생성 후, 수정해준다.
cp .env.example .env
vi .env
vendor은 composer의 의존성 폴더이다.
composer install을 하여 이를 생성해 준다.
(composer.lock 파일에 지정된대로 종속성을 설치)
composer install
* package.json파일을 가지고 있다면 npm install도 실행
이렇게 해주면 기본 설정은 끝!
다음 글에서 Laravel을 nginx를 사용하여 배포하는 법을 정리해야겠다.
* 추가 *
Laravel의 가장 흔한 오류인 권한문제 해결법
어떤 원리인지.. 어떻게 작동되는지 자세히는 알 수 없지만 아래 네 코드를 실행하면 웬만큼 해결된다.chown -R www-data:www-data bootstrap/cache chown -R www-data:www-data storage chmod -R 777 storage chmod -R 777 boostrap
(원리를 아신다면 알려주세요...ㅠㅠ)