이제 aws를 시작할 때가 됐죠 #5~Cloud9 환경에서의 실행~

6806 단어 PHPLaravelAWS

입문


aws와 장난친 것도 5번째(^^♪
Cloud9 환경에서 잘 개발할 수 있도록 저희도 Cloud9의 실례에 laravel 환경을 설정했습니다.
관건적인 laravel이 실행될 때까지 할 수 없습니다.
이번에는 이 중요한 부분의 보도입니다.
예전 기사는 여기서부터.
- 이제 시작할게요~ 일단 접촉을 해봤어요~
- 이제 aws를 시작할 때가 되지 않았나 #2 ~ CodeStar 코드를 Deploy로 수정~
- aws를 시작할 시간이 얼마 남지 않았겠죠 #3 ~ RDS와의 연결~
- 이제 aws를 시작해야겠죠 #4~Cloud9 환경 정비~

Cloud9 내장 서버에서 시작


[Run>Run with>PHP]를 선택합니다.

다음 창에 나타나는 새 탭의 CWD 를 클릭하여 문서 루트 디렉토리를 선택합니다php-laravel/public
위의 메뉴에서 미리 보기를 클릭하여 브라우저를 표시합니다.
Oops가 표시되지만 포트 번호가 없기 때문에 개의치 않습니다.

PHP(build-in web server)는 아래 창의 메시지와 같습니다.Listening on http://0.0.0.0:8080따라서 미리 보기의 URL 표시줄을 클릭하여 ":8080"을 추가합니다.


그 모양의 화면이 나왔는데... 스크립트도 이미지도 읽히지 않았어요.
Chrome의 다른 탭에 URL을 표시하면 소스 코드가 표시됩니다.
페이지의 URL은 https이고 자원의 경로는 모두 http입니다.


laravel에서 https로 asset 같은 경로를 출력합니다.


asset 등에서 지정한 주소는 모두 http이기 때문에laravel측은 https에 대응합니다.
구체적으로 이쪽 기사를 참고하겠습니다.
Laravel5.3에서 SSL 통신 강제
수정된 것은 AppServiceProvider의 boot() 정의입니다.
또한 공식 환경에서 배치할 때 http이기 때문에 여기서는 앱입니다.env가local,staging일 때만 https로 설정합니다.
원래의 비즈니스 환경에서도 ELB는 https에 들어가기 때문에 그때는 수정이 필요하다.
app/Providers/AppServiceProvider.php
<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider
{
    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
        //
    }

    /**
     * Register any application services.
     *
     * @return void
     */
    public function register()
    {
        //
    }
}
수정 후
app/Providers/AppServiceProvider.php
<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider
{
    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
        //

        if (config('app.env') === 'local' || config('app.env') === 'staging') {
            \URL::forceSchema('https');
        }
    }

    /**
     * Register any application services.
     *
     * @return void
     */
    public function register()
    {
        //
    }
}
이렇게 확인하면 이런 느낌이 정상적으로 나타난다.
IDE 내의 브라우저svg가 움직이지 않는 것 같습니다. 확인하려면 다른 탭으로 여는 것이 좋습니다!



이렇게 하면 진정한 의미의 개발 환경을 창조할 수 있다!

좋은 웹페이지 즐겨찾기