一日目 Starting up the Project

Day 1: Starting up the Project

1日目は環境セットアップです。

PHPのインストール

symfony1.2をインストールするにはPHP5.2.6以降が必要なため、PHPを再インストールします。お手軽なxamppをインストール

C:\xampp>php -v
PHP 5.2.8 (cli) (built: Dec  8 2008 19:31:23)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies

symfony1.2のインストール

pearコマンドでsymfonyをインストールします。

C:\xampp\php>pear channel-discover pear.symfony-project.com
Adding Channel "pear.symfony-project.com" succeeded
Discovery of channel "pear.symfony-project.com" succeeded

C:\xampp\php>pear install symfony/symfony-1.2.2
downloading symfony-1.2.2.tgz ...
Starting to download symfony-1.2.2.tgz (2,699,563 bytes)
............................................done: 2,699,563 bytes
install ok: channel://pear.symfony-project.com/symfony-1.2.2
C:\xampp\php>symfony -V
symfony version 1.2.2 (C:\xampp\php\PEAR\symfony)

プロジェクトディレクトリを作成

xamppのドキュメントルート配下にプロジェクト用のディレクトリを作成します。

C:\xampp\htdocs>mkdir sfprojects
C:\xampp\htdocs>mkdir sfprojects\jobeet

プロジェクトを作成

プロジェクトディレクトリに移動し、プロジェクトを作成します。

C:\xampp\htdocs\sfprojects\jobeet>symfony generate:project jobeet

アプリケーションを作成

続いてアプリケーションを作成します。

C:\xampp\htdocs\sfprojects\jobeet>symfony generate:app --escaping-strategy=on --csrf-secret=UniqueSecret frontend

Apacheの設定を変更

以下のようにhttpd.confを修正します。

Listen 8080
NameVirtualHost 127.0.0.1:8080


  DocumentRoot "C:/xampp/htdocs/sfprojects/jobeet/web"
  DirectoryIndex index.php
  
    AllowOverride All
    Allow from All
  

  Alias /sf C:/xampp/php/PEAR/symfony/data/web/sf
  
    AllowOverride All
    Allow from All
  

ここでindex.phpにアクセスしてみると、CSSと画像が読み込まれていません。
小一時間悩んだ末、C:/xampp/php/PEAR/symfony/data/が存在しないことが判明。
symfonyのzipファイルをダウンロードして、dataディレクトリをコピーしたらきちんと表示されました。