ステータス:非推奨

この記事では、サポートされなくなったバージョンのUbuntuについて説明します。 現在Ubuntu12.04を実行しているサーバーを運用している場合は、サポートされているバージョンのUbuntuにアップグレードまたは移行することを強くお勧めします。

理由:
Ubuntu 12.04は2017年4月28日に保守終了(EOL)に達しました and no longer receives security patches or updates. This guide is no longer maintained.

代わりに参照してください:このガイドは参照として役立つ場合がありますが、他のUbuntuリリースでは機能しない場合があります。 可能な場合は、使用しているUbuntuのバージョン用に作成されたガイドを使用することを強くお勧めします。 ページ上部の検索機能を使用して、より新しいバージョンを見つけることができます。

序章


Laravelは、PHPプログラミング言語のWebサイト用のフレームワークです。 これにより、開発者は、認証、セッション、キャッシングなど、ほとんどのWebプロジェクトで使用される一般的なタスクを抽象化することにより、Webサイトを迅速に開発できます。 Laravel 4の最新バージョンは、Symfonyと呼ばれる古いフレームワークに基づいていますが、より表現力豊かな構文を備えています。 依存関係マネージャーであるComposerを使用してインストールされるため、開発者はさらに多くのオープンソースPHPプロジェクトをWebプロジェクトに統合できます。 Laravelの簡単な紹介を読みたい場合は、紹介をお読みください。 Composerの詳細については、Webサイトにアクセスしてください。

準備

VPSにインストールされているパッケージを更新することから始めましょう。 これにより、互換性のないバージョンのソフトウェアで問題が発生することはありません。 また、このチュートリアルのすべてをrootとして実行するようにしてください。実行しない場合は、すべてのコマンドの前にsudoを追加してください。

apt-get update && apt-get upgrade

確認を求められたら、Enterキーを押します。

インストール


次に、Laravelのインストールに必要な実際のパッケージをインストールする必要があります。 これは基本的にNginxとPHPになります。 Composerはコマンドラインから実行されるため、php5-cliが必要です。また、FastCGI Process Managerを使用してNginxとPHP間の接続を管理するため、php5-fpmも必要になります。 さらに、Laravelにはphp5-mcryptが必要であり、Composerにはgitが必要です。

apt-get install nginx php5-fpm php5-cli php5-mcrypt git

インストールにはしばらく時間がかかりますが、これでNginxとPHPを構成する準備が整いました。

Nginxの構成

Laravelが実行する唯一のWebサイトであるように、Nginxを構成します。基本的に、Hostヘッダーに何が含まれているかに関係なく、すべてのHTTPリクエストを受け入れます。 VPSに複数のWebサイトが必要な場合は、このチュートリアルを参照してください。

LaravelWebサイト専用のフォルダーを作成します。

mkdir /var/www
mkdir /var/www/laravel

デフォルトの仮想ホストファイルを開きます。

nano /etc/nginx/sites-available/default

構成は次のようになります。

server {
        listen   80 default_server;
		
        root /var/www/laravel/public/;
        index index.php index.html index.htm;

        location / {
             try_files $uri $uri/ /index.php$is_args$args;
        }

        # pass the PHP scripts to FastCGI server listening on /var/run/php5-fpm.sock
        location ~ \.php$ {
                try_files $uri /index.php =404;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
        }
}

保存して終了します。

PHPの構成

PHP構成に小さな変更を加える必要があります。 php.iniファイルを開きます。

nano /etc/php5/fpm/php.ini

cgi.fix_pathinfo = 1という行を見つけて、1を0に変更します。

cgi.fix_pathinfo=0

この数が1のままである場合、PHPインタープリターは、要求されたファイルに可能な限り近いファイルを処理するために最善を尽くします。 これはセキュリティリスクの可能性があります。 逆に、この数が0に設定されている場合、インタープリターは正確なファイルパスのみを処理します。これははるかに安全な代替手段です。 保存してnanoを終了します。

php5-fpm構成に別の小さな変更を加える必要があります。 www.confを開きます。

nano /etc/php5/fpm/pool.d/www.conf

行を見つけて、listen = 127.0.0.1:9000を実行し、127.0.0.1:9000を/var/run/php5-fpm.sockに変更します。

listen = /var/run/php5-fpm.sock

繰り返しますが、保存して終了します。

(再)PHPとNginxの起動

次に、両方のサービスが再起動されていることを確認します。

service php5-fpm restart
service nginx restart

Composerのインストール

今度はComposerをインストールします。このプロセスは非常に簡単です。 Composerをダウンロードすることから始めましょう:

curl -sS https://getcomposer.org/installer | php

次に、グローバルにインストールします。

mv composer.phar /usr/local/bin/composer

Laravelのインストール

注意:DigitalOceanの512MBVPSにLaravelをインストールする場合は、メモリ不足を防ぐために、Ubuntuにスワップファイルを追加してください。 次のコマンドを発行することで、これをすばやく行うことができます。 これは1セッション中にのみ機能するため、このチュートリアル中に再起動した場合は、スワップファイルを再度追加してください。

dd if=/dev/zero of=/swapfile bs=1024 count=512k
mkswap /swapfile
swapon /swapfile

最後に、Laravelをインストールしましょう。

composer create-project laravel/laravel /var/www/laravel/ 4.1

テスト


次に、クラウドサーバーのIPを参照します。 あなたは使用して見つけることができます:

/sbin/ifconfig|grep inet|head -1|sed 's/\:/ /'|awk '{print $3}'

エラーが表示されます! 何? キャッシュに使用するフォルダに権限を設定する必要があります。 ああ! 今それをやってみましょう:

権限の修正

これは本当に簡単な修正です:

chgrp -R www-data /var/www/laravel
chmod -R 775 /var/www/laravel/app/storage

要約


これで、高速のNginxバックエンドで実行されているLaravelを楽しむことができます! LaravelのインストールでMySQLを使用する場合は、非常に簡単です。apt-get install mysql-serverを発行するだけで、MySQLがすぐにインストールされます。 Laravelの使用の詳細については、Webサイトにアクセスしてください。 ハッピー開発!

投稿者:Wouter ten Bosch