공유 호스팅에 Laravel 5/6/7/8 웹사이트를 배포하는 간단한 단계

3858 단어
cPanel에 배포하는 것은 `php artisan serve` 명령을 실행할 수 없고 index.php 파일이 공용 폴더에 있기 때문에 까다로워 보입니다. 그대로 배포하는 경우 'domain.tld/public'으로 사이트를 방문해야 하며 SEO 및 편의상 작동하지 않습니다.

`git` 및 `composer`를 사용하여 사이트를 쉽게 배포하고 추가 업데이트를 관리할 수 있습니다.

Laravel은 VPS 또는 전용 서버에서 가장 잘 호스팅되지만 소규모 프로젝트를 호스팅하는 데 더 많은 비용을 지불하고 싶지 않고 공유 호스팅을 선택하는 경우가 있습니다.

1단계 - https://yourdomain.com/cpanel 방문

  • cPanel 자격 증명으로 로그인합니다.

    터미널 아이콘을 찾거나 검색하여 클릭합니다.



    터미널 아이콘이 없으면 공유 계정에 "셸 액세스"가 켜져 있지 않다는 의미입니다. 호스팅 제공업체에 요청하여 활성화하세요.
    또한 cPanel 버전에 터미널 옵션이 없음을 의미할 수도 있습니다. SSH 클라이언트를 다운로드하여 사용하지만 서버에서 활성화해야 합니다. SSH 클라이언트 사용 방법은 공급자에게 문의하십시오.

    터미널을 실행합니다. 여기에서 대부분의 작업을 수행합니다.
  • PHP 버전을 확인하고 >= 7.1.3인지 확인하십시오.
  • composer 명령을 실행하여 서버에 작곡가가 설치되어 있는지 확인하십시오

  • 
      composer -V
      // Composer version 1.7.2 2018-08-16 16:57:12
    
    

    Most cPanel comes with Git pre-installed, if it is not, you might need to ask your hosting provider to have it installed.

    2단계 - 앱 설정

    • Clone the repo to a folder named "project", it should be in /home/username/project
    
      git clone [email protected]:username/repo.git project
    
  • 프로젝트 폴더로 이동하여 종속성을 설치합니다
  • .

    
     cd project
     composer install
    
  • DATABASES -> MySQL 데이터베이스 섹션의 cPanel에서 새 MySQL 데이터베이스를 생성합니다. 데이터베이스 이름, 사용자 이름 및 암호를 기록해 두십시오.
  • .env.example 파일을 .env에 복사합니다.
  • 
     cp .env.example .env
    
    
    • edit the .env file and configure it with your setting
     nano .env 

    몇 가지 중요한 설정은

    
     DB_HOST=localhost
     DB_CONNECTION=mysql
     DB_PORT=3306
     DB_DATABASE=dbname
     DB_USERNAME=dbuser
     DB_PASSWORD=dbuserpass
     APP_ENV=production
     APP_DEBUG=false
    
  • 애플리케이션 키 생성

  •  php artisan key:generate 
  • 마이그레이션 실행

  •  php artisan migrate 

    '지정된 키가 너무 깁니다. 최대 키 길이는 1000바이트입니다'라는 오류가 발생한 경우 이 문서에서 fix 을 확인해야 합니다. 리포지토리에 수정 사항을 적용한 다음 "git pull origin master"를 실행하여 이 복사본이 수정 사항을 받을 수 있도록 합니다. 그런 다음 PhpMyAdmin으로 이동하여 모든 테이블을 삭제하고 마이그레이션 명령을 다시 실행하십시오.
  • 웹서버가 쓸 수 있도록 저장소 폴더의 권한을 설정

  •  chmod -R 775 storage 
  • 최적화하십시오!

  •  
     php composer dump-autoload
     php artisan config:cache
     php artisan route:cache
    

    2단계 - 앱을 공개적으로 액세스 가능하게 설정



    현재 앱은/home/user/app 디렉토리 아래에 배치했기 때문에 외부에서 액세스할 수 없습니다. public이 액세스할 수 있는 유일한 폴더는/home/user/public_html이지만 모든 프레임워크 파일을 public_html 폴더에 배치하고 싶지는 않습니다. 따라서/home/user/app/public 폴더에 Symbolic link을 만들기만 하면 됩니다.

    이렇게 하려면 먼저 public_html 폴더의 복사본을 백업하십시오.

     
     mv public_html public_html_old
    

    심볼릭 링크를 생성

    
     ln -s /home/user/project/public /home/user/public_html
    

    폴더 구조는 다음과 유사해야 합니다.

    
     public_html -> /home/user/project/public public_html_old www -> public_html
    

    브라보! 이제 사이트가 작동해야 합니다.


  • 최신 버전을 `git pull`하거나 지속적인 배포 통합을 사용하여 추가 변경 사항을 배포할 수 있습니다.

  • 영감Darwin Biler

    좋은 웹페이지 즐겨찾기