메뉴 건너뛰기

enjoyTools.net

Windows에서 Composer로 slim 설치하기

2017.06.01 18:18

꿈돌이 조회 수:552

기본적으로는 Windows에서 Composer로 Codeigniter 설치하기와 동일하다.

근데, Slim 폴더만 가져와서는 의존성 때문에 아무 쓸모가 없다.

vendor 폴더를 www_root나 htdocs에 통째로 옮겨야 한다.

----

윈도우의 경우만.

명령프롬프트로 작업.

 

php가 C:\php 에 있다 치고, (extension 설정은 알아서...)

작업폴더는 C:\php\htdocs 라 치고,

 

* 이 링크에서 컴포저 다운로드

> 파일명은 composer-setup.php 로 교체

> 이 파일을 C:\php\htdocs 로 이동

 

* 아래와 같이 실행하여 컴포저 설치 진행

rem 컴포저 위치를 지정하고 싶으면, 환경변수 COMPOSER_HOME = "C:\composer" 식으로 만들어줘야 됨.

rem 환경변수 지정하지 않고 설치하면, 컴포저 작업폴더는 %AppData%\Composer 가 될 것임.

rem 그외 설치옵션은 https://getcomposer.org/download/ 에서 확인

cd c:\php\htdocs

..\php.exe composer-setup.php

 

* [선택 #1] 작업폴더에 곧바로 땡겨올 때는 걍 아래와 같이 하고 땡친다.

cd c:\php\htdocs

..\php.exe composer.phar require slim/slim "^3.0"

rem C:\php\htdocs\vendor 라는 폴더가 만들어지고, 그 안에 Slim을 비롯한 여러 폴더와 파일들이 생성된다.

 

* [선택 #2] 라라벨처럼 본을 떠놓고 프로젝트별로 slim을 계속 가져오려면 아래와 같이 한다.

..\php composer.phar global require "slim/slim "^3.0""

rem 컴포저 쪽 공용폴더(컴포저폴더\verndor)에 Slim 및 Slim 관련 파일들이 들어간다.

..\php.exe composer.phar create-project --prefer-dist slim/slim my_project

rem C:\php\htdocs\my_project 라는 폴더가 만들어지고, 그 안에 공용폴더에서 가져온 Slim 파일들이 들어간다.

 

* [선택 #1] > 웹루트 아래에 vendor라는 폴더를 옮긴다.

 - [선택 #2]는 패스.

 

* 웹루트에 새로운 index.php 파일을 아래와 같이 작성한다.

<?php

// https://www.slimframework.com 첫 페이지에 있는 코드
use \Psr\Http\Message\ServerRequestInterface as Request;
use \Psr\Http\Message\ResponseInterface as Response;

require 'vendor/autoload.php';

$app = new \Slim\App;
$app->get('/hello/{name}', function (Request $request, Response $response) {
    $name = $request->getAttribute('name');
    $response->getBody()->write("Hello, $name");

    return $response;
});
$app->run();

 

* 웹서버 실행 > localhost/hello/hahaha > 웹브라우저 페이지에 Hello, hahaha 가 뜨는지 확인한다.

 

# 막상 이런식으로 써보니 composer가 겁나 좋다.

# 예를 들어, Slim에다가 Medoo를 붙이려면 걍 컴포저로 불러와서 autoload 걸고 쓰기만 하면 되는 거였다니...

# 필요한 거만 이런식으로 격리시켜 쓰란 뜻이었구나

 

끝.