7

Laravel 4의 응용 프로그램을 개발했습니다. 보통/일반적인 언어 설정을 사용하여 로컬 컴퓨터에서 완벽하게 작동합니다 (이례적인 일은 아닙니다).AWS Elastic Beanstalk에서 Laravel 4 응용 프로그램 배포

지금 (아마 설치 PHP 5.4 전형적인 리눅스 64 비트 서버에) AWS 탄성 콩 줄기에 응용 프로그램을 배포 할 꿔

내 질문은 이것이다 : 나는가 파일을 변경해야합니까 응용 프로그램을 배포 할 준비가 되셨습니까?

예를 들어, 내가 만드는 데 필요한 설정 파일이 있습니까? (나는 어떤 종류의 app/config/elastic 파일을 여기에서 읽었습니다 : http:://darrennolan.com/2013/02/02/php-aws-elastic-beanstalk-rds-laravel-4-with-migrations-on-updates/)

나는 전에 배포 한 적이 없으므로 가능한 한 자세히 설명해주십시오.

답변

18

번과 응용 프로그램의 구성에 대한 귀하의 질문에 대답하기 위해, 당신은 분명히 도움이 소식을 찾을 수 :

L4 cloud deployment problems
Laravel and Elastic Beanstalk

AWS 환경 설정 질문으로 당
을 "어떤 종류의에 대해/app/config/elsatic "thing - Laravel은 실행되는 환경에 따라 다른 설정을"로드 "할 수 있습니다. 예를 들어 테스트 서버 및 프로덕션 서버와 같은 구성 파일을 포함하는 다른 하위 폴더를 설정할 수 있습니다 어. 그렇게하면 두 서버간에 파일을 안전하게 복사 할 수 있으며 파일을 동기화 할 때마다 데이터베이스 credentails 또는 기본 경로를 변경하지 않아도됩니다. 여기 링크 된 기사에서 AWS 환경을위한 하위 폴더를 만드는 것이 좋습니다. 따라서 AWS에서 앱을 실행하는 경우 활성화되는 구성 설정을 사용자 정의 할 수 있습니다.

여기
AWS
에 Laravel 4 응용 프로그램을 배포하는 방법 당신은 짧은 명령이있다. 내가 건너 왔던 지시 (그러나 그것을 아직 시험 할 시간이 없다)는 아래에 있지만, 위의 글을 먼저 읽는다. 아래 단계 주셔서 감사합니다/소품/명성은 컴퓨터
http://aws.amazon.com/code/6752709412171743
에 AWS 명령 행 도구를 설치 codenamegary from the Laravel forum


로 이동 - 설정 - 루비와 다른 것들

EC2의 몇 가지가 필요합니다 보안 그룹
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html
- EC2에서 새 보안 그룹을 만듭니다
- 네이밍 규칙은 일반적으로 원하는대로 무엇이든 사용하려고합니다 ...
"app-environment-eb"
- 예를 들어 프로덕션 환경에서 "Blog"라는 앱의 경우 "bean-production-eb"라는 블로그 애플리케이션을 탄생 콩팥 받이의 생산 환경에서
- 그룹 허가에 모든 HTTP/HTTPS 및

RDS해야 할 수도 있습니다 어떤 다른 - 설정 (MySQL 용)는 RDS 보안 그룹
http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.RDSSecurityGroups.html
- 아래에서 RDS 새로운 보안 그룹
을 만들 - 다시, 명명 규칙은 당신이 원하는 것이지만 나는 약간을 따르려고 노력한다. 같은 ...
"app-environment-rds"
- 예를 들어 프로덕션 환경에서 블로그 앱이라는 의미의 "blog-production-rds"라고하는 프로덕션 환경의 "Blog"라는 앱의 경우 on RDS
-이 RDS 보안 그룹의 EC2 보안 그룹 허용
- 그룹에서 공용 IP를 허용하여 컴퓨터에서 직접 데이터베이스에 액세스 할 수 있습니다.
- 또는 VPC 및
- 새 RDS 인스턴스를 만들고이를 새 RDS 보안 그룹에 연결하십시오.

EB는 - EB 응용 프로그램 및 환경
http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.html
만들기 - 탄성 콩 줄기 설정에서 앱, 아마존 64 비트 PHP 노드 (또는 무엇이든)
- 설정 환경은
(당신이 원하는대로 호출) - 환경 컨테이너의 문서 루트를/public으로 설정합니다.
- 환경 컨테이너의 보안 그룹을 방금 만든 EC2 보안 그룹의 이름으로 설정합니다. - 만든 RDS 인스턴스를 가리 키도록 응용 프로그램 DB 연결을 구성합니다 (호스트 이름, 암호 등)

2

또한, 크리스 Fidao의 TrustedProxy 패키지를 체크 아웃하는 것이 좋습니다, 그래서 요청 :: getClientIp()를 호출 할 때 적절한 IP 주소를 얻을 수 있습니다 : http://fideloper.com/laravel-4-trusted-proxies

(CIDR notation를 사용하여 프록시 주소를 설정해야합니다.)

Amazon의로드 밸런서 뒤에 Laravel을 적용하는 데 유용한 또 다른 정보 소스는 다음과 같습니다. http://fideloper.com/web-app-load-balancing

관련 문제