Ubuntu 20.04에서 Nginx와 함께 Laravel PHP 프레임워크를 설치하는 방법
Laravel은 표현력이 풍부하고 우아한 구문으로 잘 알려진 세계에서 가장 인기 있는 무료 오픈 소스 PHP 프레임워크입니다. Laravel은 접근성이 뛰어나고 강력하며 크고 강력하며 현대적인 애플리케이션에 필요한 최고의 웹 개발 도구 중 일부를 제공합니다.
이 문서에서는 Nginx 웹 서버에서 실행되는 Ubuntu 20.04 서버에 Laravel PHP 프레임워크를 설치하는 방법을 알아봅니다.
전제조건
- Ubuntu 20.04에서 PhpMyAdmin을 사용하여 LEMP 스택을 설치하는 방법
1단계: 필수 PHP 모듈 설치
위 링크의 가이드에 설명된 대로 Ubuntu 20.04 서버에 LEMP 스택을 설정한 후 다음과 같이 Laravel에 필요한 추가 PHP 확장을 설치해야 합니다.
sudo apt update
sudo apt php-common php-json php-mbstring php-zip php-xml php-tokenizer
2단계: Laravel용 데이터베이스 생성
다음으로, Laravel 애플리케이션을 위한 MySQL 데이터베이스를 생성해야 합니다. 따라서 mysql 셸에 로그인하고 다음과 같이 데이터베이스를 생성하세요.
sudo mysql
MariaDB [(none)]> CREATE DATABASE laraveldb;
MariaDB [(none)]> GRANT ALL ON laraveldb.* to 'webmaster'@'localhost' IDENTIFIED BY 'tecmint';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> quit
3단계: Ubuntu 20.04에 Composer 설치
Laravel은 Composer(PHP의 종속성 관리자)를 활용하여 종속성을 관리합니다. 따라서 Laravel을 사용하기 전에 그림과 같이 Composer가 시스템에 설치되어 있는지 확인하세요.
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
sudo chmod +x /usr/local/bin/composer
4단계: Ubuntu 20.04에 Laravel 설치
Composer를 설치한 후 이를 사용하여 Laravel 파일을 설치합니다. 웹 파일이 저장된 /var/www/html
디렉토리로 이동한 다음 표시된 대로 작성기를 사용하여 Laravel을 설치합니다. example.com
을 Laravel 파일이 저장될 디렉터리 이름으로 바꾸는 것을 잊지 마세요.
cd /var/www/html
composer create-project --prefer-dist laravel/laravel example.com
5단계: Ubuntu 20.04에서 Laravel 구성
새로운 Laravel 설치 내용을 나열하려면 다음 ls 명령을 실행하세요. 과거에는 수동으로 생성해야 했던 .env
파일이 자동으로 생성되었음을 알 수 있습니다.
ls -la /var/www/html/example.com/
그런 다음 Laravel 디렉터리에 다음과 같이 적절한 권한을 설정합니다.
sudo chown -R :www-data /var/www/html/example.com/storage/
sudo chown -R :www-data /var/www/html/example.com/bootstrap/cache/
sudo chmod -R 0777 /var/www/html/example.com/storage/
sudo chmod -R 0775 /var/www/html/example.com/bootstrap/cache/
다음으로, Laravel은 애플리케이션 키를 사용하여 사용자 세션 및 기타 암호화된 데이터를 보호합니다. 기본 .env
에는 기본 애플리케이션 키가 포함되어 있지만 보안을 위해 laravel 배포를 위해 새 키를 생성해야 합니다.
sudo php artisan key:generate
생성된 키는 APP_KEY
값으로 .env
파일에 추가됩니다. grep 명령을 사용하여 추가된 키를 볼 수 있습니다.
grep -i APP_Key /var/www/html/example.com/.env
또한 다음 스크린샷에 표시된 대로 .env
에서 Laravel 데이터베이스 연결 세부정보를 구성해야 합니다.
sudo nano /var/www/html/example.com/.env
6단계: Laravel 애플리케이션을 제공하도록 NGINX 구성
NGINX가 새 애플리케이션을 제공하려면 /etc/nginx/sites-available/
디렉토리 아래 NGINX 구성 내에서 서버 블록을 생성해야 합니다.
sudo nano /etc/nginx/sites-available/example.com.conf
아래 구성에서 Laravel 애플리케이션의 공개 디렉터리에 대한 루트 지시문을 업데이트하고 표시된 대로 www.example.com
을 웹 사이트의 도메인 이름으로 바꾸세요.
또한 fastcgi_pass
지시문이 PHP-FPM이 요청을 수신하는 매체를 가리켜야 한다고 설정합니다(예: fastcgi_pass unix:/run/php/php7.4 -fpm.sock
):
server{
server_name www.example.com;
root /var/www/html/example.com/public;
index index.php;
charset utf-8;
gzip on;
gzip_types text/css application/javascript text/javascript application/x-javascript image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php {
include fastcgi.conf;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
파일을 저장한 다음 /etc/nginx/sites-available/example.com.conf
에서 /etc/nginx/sites-enabled/로의 링크를 생성하여 Laravel 사이트 구성을 활성화합니다.
디렉토리. 게다가 기본 서버 블록 구성을 제거합니다.
sudo ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/
sudo rm /etc/nginx/sites-enabled/default
그런 다음 서비스를 다시 시작하기 전에 다음 명령을 실행하여 NGINX 구성 구문이 올바른지 확인하세요.
sudo nginx -t
sudo systemctl restart nginx
7단계: 웹 브라우저에서 Laravel 애플리케이션에 접근하기
이 단계에서는 Laravel 배포가 제대로 작동하는지, 브라우저에서 액세스할 수 있는지 테스트해야 합니다. 더미 도메인인 example.com
을 사용하려면 로컬 컴퓨터의 /etc/hosts
파일을 사용하여 로컬 DNS를 생성해 보겠습니다.
다음 명령을 실행하여 Laravel 서버의 IP 주소를 가져와 /etc/hosts
파일에 추가하세요(설정에 따라 값을 바꾸세요).
$IP 광고
$echo "192.168.56.11 example.com" | sudo tee -a /etc/hosts
이제 로컬 컴퓨터에서 웹 브라우저를 열고 다음 주소를 사용하여 탐색하십시오.
http://www.example.com/
이제 Laravel이 설치되었으므로 웹 애플리케이션이나 사이트 구축을 시작할 수 있습니다. 자세한 내용은 Laravel 설명서를 참조하세요.