Symfonyに挑戦04「Symfonyのプロジェクトを作る」

よし。Symfonyを動かしてみよう。
日本語ドキュメントの「3.3. アプリケーションをセットアップする」の「3.3.1. プロジェクトを作成する」から始める。

プロジェクトを作成する

Mac:~ kaneda$ mkdir ~/myson
Mac:~ kaneda$ cd ~/myson
Mac:~ kaneda$ symfony generate:project myson

これで自分のホームディレクトリ内にSymfonyのプロジェクトフォルダが出来た。
けど、気分的にこのホームフォルダに直接プロジェクトを入れるのはいやなので、今まで使ったことのない「サイト」フォルダにぶち込んだ。
作ったプロジェクトフォルダはこんな感じになった。

/Users/kaneda/Sites/myson/
 apps/
 cache/
 config/
 data/
 doc/
 lib/
 log/
 plugins/
 symfony
 test/
 web/

アプリケーションを作成する

続いてアプリケーションを作成する。なぜなら少なくとも1つのアプリケーションが必要だからです。

Mac:~ kaneda$ php symfony generate:app frontend

意味はわからないが、次々とフォルダが作られていく。

ウェブサーバを設定する

さっき作ったプロジェクトをブラウザで表示できるように、Apacheの設定をするみたいだ。
アプリケーション/xampp/etc/httpd.confをテキストエディタで開き、下記行のコメントアウト(#)を削除。

#Include /Applications/xampp/etc/extra/httpd-vhosts.conf
 ↓
Include /Applications/xampp/etc/extra/httpd-vhosts.conf

続いてアプリケーション/xampp/etc/extra/httpd-vhosts.confをテキストエディタで開き、一番下に以下をコピペ

<VirtualHost *:80>
    ServerName localhost
    DocumentRoot "/Applications/xampp/xamppfiles/htdocs"
</VirtualHost>

<VirtualHost *:80>
  ServerName myson.local
  DocumentRoot "/Users/kaneda/Sites/myson/web"
  DirectoryIndex index.php
  Alias /sf /Applications/xampp/xamppfiles/lib/php/pear/data/symfony/web/sf
  <Directory "/Applications/xampp/xamppfiles/lib/php/pear/data/symfony/web/sf">
    AllowOverride All
    Allow from All
  </Directory>
  <Directory "/Users/kaneda/Sites/myson/web">
    AllowOverride All
    Allow from All
  </Directory>
</VirtualHost>

sfフォルダの場所はスポットライトで検索したら一撃で見つかった。
/Applications/xampp/xamppfiles/lib/php/pear/data/symfony/web/sf
(パスをコピーするときはターミナル内にフォルダをドラッグ。)

Apacheの設定を変更したらApacheを再起動しなければならないぃ。
そして、XAMPP Control Panelを開いてAll Componentsの「Restart」をクリック

これでmyson.localをアクセスすると・・・。アクセスできません。
hostsと言うファイルに、使いたいドメインを書いてあげないとだめなんだよ。

Mac:~ kaneda$ sudo su
sh-3.2# vi /etc/hosts
(キーボードのiを押して一番下に下記を追加)
127.0.0.1       myson.local
(最後にescキーと:wqと入力してリターン)

これでhttp://myson.local/にアクセスしてみると・・・。
ほらできた。


次は実際にページを作っていってみよう。