티스토리 뷰

반응형

※ 작성속도를 높이기 위해 높임말을 사용하지 않았습니다.

 

설치에 앞서

라라벨(Laravel)은 PHP기반의 널리 사용되는 프레임워크이다.

오늘은 우분투(Ubuntu) 20.04 LTS에 라라벨을 설치해 보겠다.

 

라라벨 설치 방법은 몇 가지가 있지만 여기서는 라라벨 인스톨러를 설치하고 인스톨러를 이용하여 라라벨을 설치하는 방법을 사용한다.

 

APM 설치

이 포스팅은 아파치(Apache), PHP, MariaDB가 설치되어 있다는 가정하에 진행한다.

아직 설치되지 않은 사람들은 아래의 링크를 확인하자.

https://heavening.tistory.com/88

 

우분투 ubuntu 20.04 LTS APM(Apache2 + PHP8 + MariaDB) 설치

APM 설치에 앞서 서버는 AWS를 사용했으며, 이 것을 기준으로 기록합니다. (다른 클라우드를 사용하시는 분들께는 죄송합니다.) 또한 작성의 속도를 높이기 위해 모든 문장에 높임법을 사용하지

heavening.tistory.com

 

컴포저 설치

우선 컴포저 및 기타 라라벨을 구동하는데 있어 필요한 라이브러리가 설치되어 있어야한다.

컴포저 설치는 아래의 링크를 참조.

https://heavening.tistory.com/91

 

우분투 Ubuntu 20.04 LTS 컴포저 Composer 설치하기

요즘 뭐만 하면 컴포저(Composer)로 설치해야하는데 컴포저를 모르면 여러가지로 불편한 것 같습니다. 이번에는 우분투(Ubuntu) 서버에 컴포저를 설치해보겠습니다. Composer 설치에 앞서 가상서버는 i

heavening.tistory.com

 

라이브러리 설치

아래의 명령어 실행시 apt가 안되면 apt-get으로 입력

sudo apt install openssl php-mbstring php-mcrypt php-tokenizer

 

사용자 추가 및 설정

라라벨을 이용하여 웹페이지를 만들 사용자 추가.

여기서는 사용자명을 tester로 기술.

sudo adduser <사용자명>
sudo adduser tester

자세한 사용자 추가법은 아래 링크 참조.

https://heavening.tistory.com/89

 

리눅스 Linux 우분투 Ubuntu 사용자 추가

사용자를 추가하기 전 관리자 권한을 가져옵니다. ubuntu@ip-000-000-000-000:~$ sudo su root@ip-000-000-000-000:/# 사용자 추가 우분투에서 사용자 추가하는 방법은 아래와 같습니다. ( 상세설명은 하기에.. )..

heavening.tistory.com

사용자를 추가하면 해당 사용자의 홈디렉토리가 자동으로 생성된다.

방금 추가한 사용자의 홈디렉토리로 이동하자. (홈디렉토리를 모르겠으면 위의 링크 참조)

이동 후에는 계정 추가 후 구동할 홈페이지 파일을 생성 또는 업로드 할 디렉토리를 생성한다.

(웹파일을 저장하는 디렉토리는 대부분 www, public, html, public_html 등으로 쓰곤한다. 이름을 정하는건 자유지만 대부분이 사용하는 이름으로 생성해두면 여러 명이 참여하는 프로젝트를 진행중에 다른 작업자들이 한 눈에 알아보기 편할 것이다. 여기서는 www로 진행하겠다.)

그리고 권한도 변경해준다.

(홈디렉토리에 해당 계정이 아닌 관리자 계정으로 디렉토리를 생성하면 소유자가 관리자 계정으로 되어 있음)

cd /home/<사용자명>/
mkdir www
chown <사용자명>:<사용자명> www
cd www
cd /home/tester/
mkdir www
chown tester:tester www
cd www

드디어 설치하기 위한 준비가 끝났다.

라라벨 인스톨러 설치로 넘어가 보자.

 

라라벨 설치

앞서 말했듯이 이 포스팅에서는 라라벨 인스톨러를 설치하고 그 인스톨러를 이용하여 필요한 계정에 라라벨을 설치할 것이다.

먼저 인스톨러를 설치하자.

 

라라벨 인스톨러 설치

라라벨 인스톨러를 설치하기 앞서 인스톨러를 설치할 디렉토리로 이동하여야 한다.

필자의 경우 /root 디렉토리에 설치할 것이므로 해당 디렉토리로 이동 후 컴포저를 이용하여 인스톨러를 설치할 것이다.

현재 root 계정으로 접속된 상태일 때를 가정하여 아래의 과정을 따라하면 된다.

(※ 보안을 위해.. root 계정으로 SSH 접속 및 작업하는 것은 추천되지 않으며, 관리자 권한을 가진 다른 계정을 생성 후 작업하는 것을 권장한다. 하지만 필자를 포함한 초보들을 위한 설치작업이라는 가정하에 root 계정을 그대로 이용하여 설치를 진행함을 알림)

(라라벨 인스톨러가 설치되는 위치는 본인이 원하는 곳으로 정해도 됨)

composer global require laravel/installer

관리자 권한으로 composer global require laravel/installer 명령을 입력시 관리자 권한으로 컴포저를 실행할 것인지 물어보는데 y 또는 yes를 입력해준다.

Continue as root/super user [yes]? y
Continue as root/super user [yes]? yes

 

인스톨러를 어디에서나 사용할 수 있도록 환경변수 중 $PATH라는 환경변수에 심볼릭 링크를 만들어준다.

심볼릭 링크는 Windows의 '바로가기'라고 생각하면 쉽다.

 

심볼릭 링크 생성

ln -s /root/.config/composer/vendor/bin/laravel /usr/bin/laravel

ln -s [심볼릭 링크를 생성할 대상 파일 및 디렉토리] [생성할 심볼릭 링크]

여기서 /usr/bin 디렉토리에 laravel이란 이름으로 심볼릭 링크를 생성했는데, 이유는 $PATH에 등록된 /usr/bin 폴더에 실행파일이 있으면어느 디렉토리에 있던지 파일명 만으로 실행이 가능하기 때문이다.

$PATH에는 여러 디렉토리를 입력해둘 수 있는데 설정법은 다음에 기회가 되면 다루도록 하자.

혹시나 $PATH에 어떤 디렉토리들이 있는지 확인하고 싶은 경우에는 $PATH라고 입력하면 된다.

$PATH
[결과] -bash: /usr/local/bin:/usr/bin: ... 등등등

입력시 꼭 대문자로 입력.

 

 

반응형

 

라라벨 설치

먼저 아까 생성한 사용자의 웹파일 폴더로 이동한다.

cd /home/<사용자명>/www
cd /home/tester/www

이동 후 아래와 같이 인스톨러를 이용하여 설정된 디렉토리에 라라벨을 설치.

laravel new <설치폴더>
laravel new laravel

laravel[1]을 실행해서 new[2] laravel[3]이라는 디렉토리에 설치한다.

라는 뜻이다.

심볼릭 링크를 생성하지 않았으며, 설치할 디렉토리로 이동하지 않았다면 아래와 같이 명령어를 입력해주면 된다.

/root/.config/composer/vendor/bin/laravel new /home/<사용자명>/www/<설치폴더>
/root/.config/composer/vendor/bin/laravel new /home/tester/www/laravel

[1] laravel $PATH에 "/root/.config/composer/vendor/bin/laravel"을 심볼릭 링크로 생성하여 어디서든 실행할 수 있게 작업해 두었기 때문에 "laravel"이라고만 입력해도 OK.

[2] new 신규 라라벨을 설치할 때 사용하는 실행 옵션.

[3] laravel 인스톨러로 라라벨을 설치할 디렉토리.

 

※ 관리자 권한으로 신규 라라벨 설치시 Continue as root/super user [yes]? 라는 문구가 나오는데 위에서 한 번 했던 것과 같이 yes라고 입력해주면 된다.

 

권한 설정 및 rewrite 모듈 활성화 설정

설정이 끝났다면 웹에서 원활하게 실행이 가능하도록 권한을 설정해줘야한다.

chown -R <사용자명>:www-data <설치폴더>/ <설치폴더>/storage/ <설치폴더>/bootstrap/cache/
chmod -R 775 <설치폴더>/storage/ <설치폴더>/bootstrap/cache/
a2enmod rewrite
chown -R tester:www-data laravel/ laravel/storage/ laravel/bootstrap/cache/
chmod -R 775 laravel/storage/ laravel/bootstrap/cache/
a2enmod rewrite

chown[1] -R[2] tester[3]:www-data[4] laravel/[5] laravel/storage/[6] laravel/bootstrap/cache/[7]

[1] chown 소유자 변경 명령어.

[2] -R 타겟이 되는 디렉토리 및 "하위 디렉토리와 파일까지" 모두 변경하겠다는 옵션. 대문자 필수.

[3]:[4] tester:www-data 소유자의 사용자명:그룹명

[5] [6] [7] laravel/ laravel/storage/ laravel/bootstrap/cache/ 소유자를 변경할 타겟. 띄어쓰기로 다수 입력 가능.

 

chmod[1] -R[2] 775[3] laravel/storage/[4] laravel/bootstrap/cache/[5]

[1] chmod 권한 변경 명령어.

[2] -R 타겟이 되는 디렉토리 및 "하위 디렉토리와 파일까지" 모두 변경하겠다는 옵션. 대문자 필수.

[3] 775 변경할 권한. 자세한 설명은 아래의 링크 참조.

https://recipes4dev.tistory.com/175

 

리눅스 chmod 명령어 사용법. (Linux chmod command) - 리눅스 파일 권한 변경.

1. 리눅스 파일 사용 권한 리눅스에서, 파일(File)을 사용해 할 수 있는 작업은 크게 세 가지로 나눌 수 있습니다. 파일에 저장된 데이터를 읽기. (r = read). 파일에 데이터를 쓰기. (w = write). 파일 실

recipes4dev.tistory.com

[4] [5] laravel/storage/ laravel/bootstrap/cache/ 소유자를 변경할 타겟. 띄어쓰기로 다수 입력 가능.

 

a2enmod rewrite

- rewrite 모듈 활성화

 

여기까지 왔다면 라라벨 설치는 끝났다.

이제는 라라벨을 웹브라우저에서 확인할 수 있도록 설정하는 작업만 남았다.

 

도메인 연결

본인이 도메인을 가지고 있다면 그 도메인과 연결할 수 있다.

연결할 경우에는 도메인을 가지고 있어야 하며, 도메인 레코드를 추가하여 라라벨을 설치하는 서버를 연결해줘야 한다.

아래의 작업은 이 작업이 끝났다는 전제하에 진행되어야 한다.

 

여기서는 laravelstudy.com과 www.laravelstudy.com을 연결해보겠다.

 

사이트 설정은 /etc/apache2/sites-available 디렉토리에서 할 수 있다.

해당 디렉토리에 사이트 설정 파일을 생성해준다.

여기서는 vim을 사용했지만 본인이 편한 에디터로 생성해주면 된다.

vi /etc/apache2/sites-available/laravelstudy.com.conf

내용은 아래와 같이 입력해주고 저장한다.

위와같이 vi 또는 vim으로 파일 저장방법.

1) [Esc] 키.

2) :wq 입력.

3) [Enter] 키.

<VirtualHost *:80>
	ServerName 도메인
	ServerAlias 추가도메인
	ServerAlias 추가도메인
	...

	DocumentRoot /home/사용자명/www/설치폴더/public

	<Directory /home/사용자명/www/설치폴더>
		AllowOverride All
	</Directory>

	AssignUserID 사용자명 그룹명

	ErrorLog ${APACHE_LOG_DIR}/error.log
	CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
<VirtualHost *:80>
	ServerName laravelstudy.com
	ServerAlias www.laravelstudy.com

	DocumentRoot /home/tester/www/laravel/public

	<Directory /home/tester/www/laravel>
		AllowOverride All
	</Directory>

	AssignUserID tester tester

	ErrorLog ${APACHE_LOG_DIR}/error.log
	CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

사이트 설정이 끝나면 생성한 사이트 설정을 활성화 하고, 웹서버 프로세스를 재시작하여 준다.

a2ensite laravelstudy.com.conf
service apache2 restart
a2ensite laravelstudy.com.conf
service apache2 restart

이제 웹브라우저에서 해당 도메인으로 접속해보자.

도메인이 연결되기까지 시간이 걸릴 수도 있지만 라라벨이 정상적으로 실행되었다면 아래와 같이 나올 것이다.

라라벨 설치 성공

 

수고하셨습니다 :)

 

반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함