찾다
백엔드 개발PHP 튜토리얼Laravel 및 Git을 사용하여 웹 사이트를 배포하십시오

Deploy Your Website Using Laravel and Git

코어 포인트

Laravel과 Git의 조합은 효율적인 웹 사이트 배포를 가능하게하고 GIT는 파일 변경을 관리하며 Laravel은 반복적 인 작업을 자동화하여 단순화되고 제어 가능한 배포 프로세스를 가능하게합니다.

배포 프로세스에는 다음이 포함됩니다. 중앙 저장소 설정, 리포지토리를 복제하여 로컬 및 온라인 웹 사이트를 작성하고 Laravel 설치. 그런 다음 GIT를 사용하여 파일 변경 사항을 추적하고 이러한 변경 사항을 프로덕션 서버의 중앙 저장소로 푸시하십시오.
    Laravel은 컨트롤러를 참조하고 컨트롤러 생성 및 Laravel의 SSH Facade를 사용하여 GIT 배포 워크 플로를 반복하여 배포 프로세스를 자동화 할 수 있습니다. 특정 URL에 액세스하여 쉽게 배포하십시오.
  • 배포 보안을 보장하려면 배포 페이지에 대한 무단 액세스를 방지하십시오. 이는
  • 를 사용하여 특정 파일을 무시하고 배포 경로를 실행하기 전에 존재하는지 확인하여 수행 할 수 있습니다. 다른 방법으로는 비밀번호 보호 또는 IP 주소 제한이 있습니다.
  • 성공적인 웹 개발은 효과적인 웹 사이트 배포 워크 플로와 분리 할 수 ​​없습니다. 워크 플로우가 좋든 나쁘 든 아니든, 웹 사이트를 사용할 수없는 경우 고객은 노력의 과일에 대한 비용을 지불 할 수 없습니다.
  • 웹 사이트를 제작 서버에 배포하는 방법에는 여러 가지가 있으며 각각 장점과 단점이 있지만 시작 및 종료 방법은 동일합니다. 좋은 웹 사이트 배포 워크 플로의 핵심은 중간 단계입니다. .gitignore 다른 날, 나는 FileZilla를 사용하여 파일을 제작 서버에 업로드했습니다. 나는 항상 Filezilla의 인터페이스가 매우 친절하지 않다고 생각했지만 오랫동안 표준 연습이라고 생각했습니다.
  • 같은 프로젝트의 경우 git을 사용하여 파일 변경을 추적합니다. 입력을 시작했을 때 잠시 멈추고 잠시 생각했습니다. 웹 사이트 배포가 git 저장소를 추진하는 것만 큼 간단한 경우 더 편리하지 않습니까?
신중하게 생각하십시오. GIT는 웹 사이트 배포 파일을 처리하기에 완벽한 도구입니다. 모든 파일 변경을 추적하고 하나의 명령으로 원하는 것을 푸시하거나 가져옵니다. 내 웹 사이트를 배포 할 때 GIT를 사용하는 방법을 위해 Google 검색을 시작하기로 결정했습니다.

GIT를 사용하여 웹 사이트를 배포하는 인기있는 방법 중 하나는 GIT 후크를 최대한 활용하는 것입니다 (Tom Oram은 비슷한 방법을 사용하는 것을 좋아합니다). git 후크가 단순히 터미널 콘솔에 Deploy Your Website Using Laravel and Git 를 입력하여 사전 정의 된 스크립트를 시작한다고 상상해보십시오. 이 사전 정의 된 스크립트는 프로덕션 서버에 액세스하고 최신 파일 변경을 가져옵니다. 푸시 변경과 동일한 명령을 사용하여 웹 사이트를 업데이트 할 수도 있습니다. 나는이 접근법이 로컬 저장소를 밀어 붙였다고해서 내가 살 준비가되었음을 의미하지 않았다는 것을 깨달을 때 까지이 접근법이 훌륭하다고 생각했습니다.

나는 git을 사용하는 것만 큼 간단한 저장소를 푸시하는 방법을 원합니다. 더 중요한 것은 콘텐츠를 온라인으로 가져올 때 완전히 제어하고 싶습니다. GIT를 사용하여 파일 전송을 처리하는 유사한 워크 플로를 발견했습니다. 가장 중요한 것은 PHP 프레임 워크 Laravel을 사용하여보다 반복적 인 작업을 자동화 할 수 있다는 것을 알았습니다.

다음은 내 웹 사이트 배포 워크 플로입니다

구조적 설정

이 섹션에서는 중앙 저장소로 -베어 리포지토리를 설정하고 복제하여 두 개의 리포지토리를 생성합니다. 하나는 배포 프로세스를 수행 할 지역 웹 사이트입니다. Laravel도 설치합니다.

시작하기 전에 GIT가 설치된 로컬 서버 및 프로덕션 서버가 필요합니다. 유용한 리소스 :

homestead_improved

설치 git 및 검토 설치

> 1. -베어 리포지토리 를 초기화하십시오 SSH는 프로덕션 서버에 연결하고 중앙 저장소가 위치하려는 디렉토리를 찾으십시오. Deploy Your Website Using Laravel and Git

이제 저장소를 초기화하십시오.

이 폴더는 일반적으로 공개 폴더 구조 외부에 배치하는 것이 좋습니다. 이런 식으로 다른 사람들은 실수로 개인 저장소를 우연히 발견하지 못합니다.
    온라인 웹 사이트를 만들기위한 클로닝 > 2 에서 웹 사이트 파일을 호스팅 할 위치를 결정하십시오.
  • 이제 방금 만든 중앙 저장소를 복제 하고이 SSH 세션에서 로그 아웃하십시오.
  • 로컬 웹 사이트를 만들기위한 > 3 Homestead와 같은 것을 사용하는 경우 Vagrant 명령을 SSH에 사용하여 로컬 서버에 연결하여 파일에 액세스해야 할 수도 있습니다.

방금 온라인 웹 사이트를 만든 단계를 따르십시오.

> 4 Laravel을 설정하기 전에 현지 웹 사이트에 설치해야합니다.

유용한 리소스 :
<code>ssh username@domain.com
cd repos</code>

설치 LARAVEL

를 열어 원격 서버 설정을 구성 파일에 추가하십시오.
<code>git init --bare --shared mywebsite.git</code>

나중에 참조해야하므로 "생산"키를 기억하십시오.

파일을 로컬 웹 사이트 저장소에 추가하여 변경 사항을 추적 할 수 있습니다.

초기 커밋을 실행하십시오.

public_html 마지막으로, 프로덕션 서버의 중앙 저장소로 밀어 넣으십시오.

<code>cd ~/public_html/</code>

로컬에 액세스 할 때 Laravel의 "당신은 도착했습니다."
<code>git clone username@domain.com:~/repos/mywebsite.git mywebsite
exit</code>

잘 했어! 당신은 모두 설정하고 구성되었으며 이제 흥미로운 콘텐츠를 파헤칠 준비가되어 있어야합니다.

git 를 사용한 핵심 워크 플로우 모든 것이 설정되면 GIT를 사용하여 웹 사이트를 쉽게 배포 할 수 있습니다. 코드를보고 핵심 내용을 이해하려고 노력합시다.

Laravel을 사용하여 PHP에서 나중에 다시 작성하므로 워크 플로를 이해하는 것이 중요합니다. 또한 발생할 수있는 모든 문제를 디버깅하는 데 도움이됩니다.

> 1. SSH는 온라인 서버에 연결하여 생산 창고를 찾으십시오.

> 2. 이제 중앙 저장소를 당겨 새 파일 변경을 병합하십시오.

당신이 지금까지 정확한 경우, 당신은 온라인 사이트를 방문 할 때 "당신은 도착했습니다."
<code>ssh username@domain.com
cd repos</code>
당신이 여기서 멈추고 싶다면, 나는 당신에 대한 의견이 없습니다. 이것은 그 자체로 매우 신뢰할 수있는 배포 워크 플로입니다. 그러나 우리는 Laravel으로 자동화하여 더 효율적으로 만들 수 있습니다.

Laravel을 사용한 자동 배포
<code>git init --bare --shared mywebsite.git</code>
Ok, 이제 GIT를 사용하여 웹 사이트를 배포하는 방법을 알았으므로 Laravel을 사용 하여이 프로세스를 자동화합시다. 이 부분은 필요하지 않을 수 있지만, 이미 Laravel을 사용하고 있다면 Laravel을 사용하는 이유는 무엇입니까?

> 1. 컨트롤러를 참조하는 간단한 경로를 만드는 것으로 시작합시다.

페이지를 열고 파일에 다음 php 코드 줄을 추가하십시오.

에 액세스 할 때마다 > 2. 이제 참조하고 저장하는 컨트롤러를 만들어 봅시다. 를 연장하는 빈 클래스로 시작하십시오.

이제 공통 함수를 컨트롤러에 삽입하십시오.

폴더에 저장하고 이름을 로 지정하십시오.

흥미로운 부분이 여기 있습니다! /app > 3. Laravel의 SSH Facade를 함수에 삽입하고 GIT 배포 워크 플로를 반복하십시오. routes.php SSH 외관 삽입. 이전에 설정 한 프로덕션 원격 구성에 액세스하고자합니다.

<code>cd ~/public_html/</code>

이제 http://localhost/deploy 기능은 우리가 제공 해야하는 두 개의 매개 변수를 수락합니다. 첫 번째이자 가장 중요한 매개 변수는 함수를 실행할 때 실행하려는 터미널 명령의 배열입니다. Server deploy 두 번째는 서버에서받는 피드백을 처리하기 위해 호출하려는 기능입니다.

이제 웹 사이트를 배포 할 때마다

를 방문하면됩니다. 충분히 간단합니까? 예, 정확히 아닙니다.

우리는 그것을 끝이라고 부르기 전에 보안 취약점을 다루어야합니다. 누구나 를 우연히 발견하고 웹 사이트를 배포 할 수 있습니다. 우리가해야 할 일은 이것을 막기 위해 무언가를 설정하는 것입니다. BaseController이를 수행하는 방법에는 여러 가지가 있으며, 우리는 소진 될 때까지 가장 안전한 방법을 주장 할 수 있습니다. 경로의 비밀번호를 보호하고 IP 주소를 통해 액세스를 차단할 수 있습니다.

이 예에서는 를 사용하고 파일이 있는지 확인한 다음 방금 만든 경로를 실행합니다.

> 4.

를 무시하려면 파일을 만듭니다. .gitignore 새 파일을 만들어 에 저장하고 이름을 라고 저장하십시오.

파일에 다음 텍스트 줄을 추가하고 저장하십시오.

controllers > 5. 웹 사이트를 배치하는 경로를 실행하기 전에 파일이 존재하는지 확인하십시오. .gitignore 웹 사이트를 배포하기 전에 우리가 만든 경로를 기억하십니까? 우리는이 조건부 진술로 그것을 마무리해야합니다. 그런 다음 온라인으로 갈 수 있습니다. Server.php

완료되면 이렇게 보일 것입니다.

/app/controllers .gitignore 창의력

그게 다야! 업데이트 된 모든 파일, 커밋 및 푸시를 저장하면 GIT 친화적 인 워크 플로로 배포를 시작할 수 있습니다.

<code>ssh username@domain.com
cd repos</code>

원한다면 더 나아갈 수 있습니다. 빠른 원 클릭 배포를 위해 북마크에 를 추가하십시오. 페이지에 게시 할 간단한 HTML 양식을 만들어 특정 분기를 가져올 수 있습니다. 가능성은 끝이 없습니다. Server.php Git 및 Laravel과 함께 배포하면 지루한 웹 사이트 배포 작업을 재미있게 만듭니다. Git을 알고 있다면 설정하기 쉽지만 사용하기가 쉽습니다.

웹 사이트 배포를 단순화하는 데 사용한 창의적인 방법을 나에게 공유하십시오!

Laravel 및 Git

<code>git init --bare --shared mywebsite.git</code> FAQS (FAQS) git을 사용하여 Laravel 웹 사이트를 배포 할 때 충돌을 해결하는 방법은 무엇입니까?

GIT를 사용하여 Laravel 웹 사이트를 배포 할 때, 특히 여러 개발자가 동일한 프로젝트를 수행 할 때 충돌이 발생할 수 있습니다. 이러한 충돌을 해결하려면 GIT의 충돌 해결 도구를 사용해야합니다. 갈등이 발생하면 Git은 변경 기반을 일시 중지하고 갈등을 해결할 수있는 기회를 제공합니다. 그런 다음 를 사용하여 분해 된 파일을 추가하고

를 사용하여 계속 리베이스를 사용할 수 있습니다. 작업을 시작하기 전에 항상 저장소에서 최신 변경 사항을 가져와 충돌을 최소화하십시오.
<code>cd ~/public_html/</code>
Laravel 프로젝트에서 git 브랜치를 효과적으로 사용하는 방법은 무엇입니까?

Git Branch는 다양한 버전의 Laravel 프로젝트를 관리하기위한 강력한 도구입니다. 각 기능 또는 버그 수정에 대한 새 지점을 만들 수있어 주 코드베이스에 영향을주지 않고 여러 작업을 동시에 처리 할 수 ​​있습니다. 작업이 완료되면 분기를 기본 코드베이스로 다시 병합 할 수 있습니다. 이 방법은 기본 코드베이스가 안정적이고 오류가없는 상태로 유지되도록합니다. Laravel 웹 사이트의 배포 프로세스를 자동화하기 위해 GIT를 사용하는 방법은 무엇입니까?

자동화 된 배포 프로세스는 많은 시간과 노력을 절약 할 수 있습니다. Commit, Push 및 Search와 같은 이벤트 전후에 실행하는 스크립트 인 Git Hooks를 사용할 수 있습니다. 기본 지점으로 밀 때마다 웹 사이트를 자동으로 배포하는 스크립트를 작성할 수 있습니다. 이렇게하면 웹 사이트가 항상 최신 변경 사항과 일치하는지 확인할 수 있습니다.

Laravel 프로젝트에서 GIT를 사용하여 변경 사항을 롤백하는 방법은 무엇입니까?

GIT는 변경 사항을 롤백하는 몇 가지 방법을 제공합니다.

를 사용하여 특정 커밋의 변경 사항을 취소하기위한 새로운 커밋을 만들 수 있습니다. 또는

를 사용하여 헤드 포인터를 이전 커밋으로 이동하고 나중에 나타나는 커밋을 효과적으로 "잊어 버리십시오". 변경 사항을 영구적으로 삭제할 수 있으므로 사용할 때주의하십시오.

GIT로 배포 할 때 Laravel 프로젝트를 안전하게 유지하는 방법은 무엇입니까?

보안은 모든 웹 개발 프로젝트의 중요한 측면입니다. GIT로 Laravel 프로젝트를 배포 할 때는 파일에 민감한 파일 (예 : git revert)을 추가하여 저장소에 커밋되는 것을 방지하십시오. 또한, SSH 또는 HTTPS와 같은 안전한 프로토콜은 저장소에서 밀고 당기면 항상 사용됩니다. git reset Laravel 프로젝트에서 GIT를 사용하여 데이터베이스 마이그레이션을 관리하는 방법은 무엇입니까? git reset Laravel의 마이그레이션 시스템은 데이터베이스 스키마 관리를위한 강력한 도구입니다. 프로젝트를 배포 할 때

를 사용하여 보류중인 마이그레이션을 적용 할 수 있습니다. 그러나 해당 마이그레이션이 문제를 일으킬 수 있으므로 여러 개발자와 협력 할 때주의하십시오. 새로운 마이그레이션을 만들기 전에 충돌을 피하기 위해 항상 저장소에서 최신 변경 사항을 가져 오십시오.

GIT를 사용하여 Laravel 프로젝트에서 다른 개발자와 협력하는 방법은 무엇입니까?

Git은 강력한 협업 도구입니다. 분기를 사용하여 다양한 기능을 동시에 처리하고 풀 요청을 사용하여 변경 사항을 기본 코드 기반으로 병합 할 수 있습니다. 또한 GIT의 충돌 해결 도구는 변경 사항을 병합 할 때 발생하는 충돌을 해결하는 데 도움이 될 수 있습니다.

Laravel 프로젝트의 변경 사항을 추적하기 위해 GIT를 사용하는 방법은 무엇입니까? .env Git은 프로젝트의 모든 변화에 대한 완전한 역사를 제공합니다. .gitignore를 사용하여 커밋 기록을보고

를 사용하여 특정 커밋에서 작성된 변경 사항을 볼 수 있습니다. 이것은 프로젝트의 진화를 디버깅하고 이해하는 데 매우 유용합니다.

GIT로 배포 할 때 Laravel 웹 사이트의 성능을 최적화하는 방법은 무엇입니까?

성능 최적화는 웹 개발의 핵심 측면입니다. GIT로 Laravel 웹 사이트를 배포 할 때 Laravel의 내장 캐싱을 사용하여 성능을 향상시킬 수 있습니다. 또한 CDN을 사용하여 정적 리소스를 제공하고 이미지 및 기타 리소스를 최적화하여 로딩 시간을 줄입니다.

Laravel 프로젝트의 오류 및 예외를 처리하기 위해 GIT를 사용하는 방법은 무엇입니까?

원활한 사용자 경험을 위해서는 오류 및 예외를 올바르게 처리하는 것이 필수적입니다. Laravel은 다양한 유형의 오류를 처리하는 데 사용할 수있는 강력한 예외 처리 시스템을 제공합니다. 오류가 발생하면 GIT를 사용하여 오류를 수정하면서 이전 안정 상태로 롤백 할 수 있습니다.

위 내용은 Laravel 및 Git을 사용하여 웹 사이트를 배포하십시오의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
PHP 세션이 이미 시작되었는지 어떻게 확인할 수 있습니까?PHP 세션이 이미 시작되었는지 어떻게 확인할 수 있습니까?Apr 30, 2025 am 12:20 AM

PHP에서는 session_status () 또는 session_id ()를 사용하여 세션이 시작되었는지 확인할 수 있습니다. 1) session_status () 함수를 사용하십시오. php_session_active가 반환되면 세션이 시작되었습니다. 2) session_id () 함수를 사용하십시오. 비어 있지 않은 문자열이 반환되면 세션이 시작되었습니다. 두 방법 모두 세션 상태를 효과적으로 확인할 수 있으며 사용할 방법을 선택하면 PHP 버전 및 개인 선호도에 따라 다릅니다.

웹 응용 프로그램에서 세션을 사용하는 것이 필수적인 시나리오를 설명하십시오.웹 응용 프로그램에서 세션을 사용하는 것이 필수적인 시나리오를 설명하십시오.Apr 30, 2025 am 12:16 AM

SessionSareVitalInWebApplications, 특히 상수도가 포함되어 있습니다.

PHP에서 동시 세션 액세스를 어떻게 관리 할 수 ​​있습니까?PHP에서 동시 세션 액세스를 어떻게 관리 할 수 ​​있습니까?Apr 30, 2025 am 12:11 AM

PHP에서 동시 세션 액세스 관리 다음 방법으로 수행 할 수 있습니다. 1. 데이터베이스를 사용하여 세션 데이터를 저장하십시오. 이러한 방법은 데이터 일관성을 보장하고 동시성 성능을 향상시키는 데 도움이됩니다.

PHP 세션 사용의 한계는 무엇입니까?PHP 세션 사용의 한계는 무엇입니까?Apr 30, 2025 am 12:04 AM

phpsessionshaveseverallimitations : 1) StorageConstraintsCanleadToperFormanceIssues; 2) SecurityVulnerabilitiesSessionFixationAtCATACKSEXIST; 3) 확장 성분이 ANCHALLENGINGDUETOSERVERS-SCIFICSTORAGE; 4) SessionExpirationManagementCanbeproblematic; 5) Datapersis

로드 밸런싱이 세션 관리에 어떤 영향을 미치는지 설명하고 해결 방법을 설명하십시오.로드 밸런싱이 세션 관리에 어떤 영향을 미치는지 설명하고 해결 방법을 설명하십시오.Apr 29, 2025 am 12:42 AM

로드 밸런싱은 세션 관리에 영향을 미치지 만 세션 복제, 세션 끈적임 및 중앙 집중식 세션 스토리지로 해결할 수 있습니다. 1. 세션 복제 복사 서버 간의 세션 데이터. 2. 세션 끈은 사용자 요청을 동일한 서버로 안내합니다. 3. 중앙 집중식 세션 스토리지는 Redis와 같은 독립 서버를 사용하여 세션 데이터를 저장하여 데이터 공유를 보장합니다.

세션 잠금의 개념을 설명하십시오.세션 잠금의 개념을 설명하십시오.Apr 29, 2025 am 12:39 AM

SessionLockingIsateChniqueSureDureauser의 SessionLockingSsessionRemainSexclusivetoOneuseratatime.itiscrucialforpreptingdatacorruptionandsecurityBreachesInmulti-userApplications.sessionLockingSogingSompletEdusingserVerver-sidelockingMegynisms, unrasprantlockinj

PHP 세션에 대한 대안이 있습니까?PHP 세션에 대한 대안이 있습니까?Apr 29, 2025 am 12:36 AM

PHP 세션의 대안에는 쿠키, 토큰 기반 인증, 데이터베이스 기반 세션 및 Redis/Memcached가 포함됩니다. 1. Cookies는 클라이언트에 데이터를 저장하여 세션을 관리합니다. 이는 단순하지만 보안이 적습니다. 2. Token 기반 인증은 토큰을 사용하여 사용자를 확인합니다. 이는 매우 안전하지만 추가 논리가 필요합니다. 3. Database 기반 세션은 데이터베이스에 데이터를 저장하여 확장 성이 좋지만 성능에 영향을 줄 수 있습니다. 4. Redis/Memcached는 분산 캐시를 사용하여 성능 및 확장 성을 향상하지만 추가 일치가 필요합니다.

PHP의 맥락에서 '세션 납치'라는 용어를 정의하십시오.PHP의 맥락에서 '세션 납치'라는 용어를 정의하십시오.Apr 29, 2025 am 12:33 AM

SessionHijacking은 사용자의 SessionID를 얻음으로써 사용자를 가장하는 공격자를 말합니다. 예방 방법은 다음과 같습니다. 1) HTTPS를 사용한 의사 소통 암호화; 2) SessionID의 출처를 확인; 3) 보안 세션 생성 알고리즘 사용; 4) 정기적으로 SessionID를 업데이트합니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

VSCode Windows 64비트 다운로드

VSCode Windows 64비트 다운로드

Microsoft에서 출시한 강력한 무료 IDE 편집기

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기