Help us understand the problem. What is going on with this article?

CentOS7環境でLaravelを構築する

More than 1 year has passed since last update.

はじめに

春に向けて、CentOSの環境を着々と構築していっています。
とりあえずCentOSをWebサーバー、SQLサーバーとして仮に運用してみようと思っているところです。
今回はかの有名なLaravelさんをインストールしてみました。そろそろMVC始めていきたい。

2018-03-13追記:
後で書いたこっちの記事のほうがガチ目な設定やってます。

環境

CentOS Linux release 7.3.1611(Core) x86_64
PHP 5.6.30
Composer 1.3.2
Laravel 5

必須環境

PHP : 5.4以上
PHP Module : php-mcrypt, php-mbstring, php-pdo, php-mysqlnd

console
#CentOS バージョン確認
$ cat /etc/redhat-release

Laravelサービス起動までの手順

  • PHPインストール
  • Composerインストール
  • Laravelインストーラー ダウンロード
  • Laravel Project生成
  • テストサーバー起動

PHPインストール

当初PHP5.4で実行しようとしたところ、正常に動作しなかった。
そのため、今回はPHP5.6をインストールしている。恐らく5.4でも正常動作はすると思われる。

リポジトリ登録

まずはリポジトリを登録する。なお、下記リポジトリは執筆時点でのものであることを付け加えておく。

console
$ rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/epel-release-7-8.noarch.rpm
$ rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

PHP5.6インストール

PHP5.6本体を単体インストールする。

console
# まずは先にphp単体でインストールを実行する
$ yum install --enablerepo=remi --enablerepo=remi-php56 php
# バージョンを確認する
$ php -v

# 出力結果
PHP 5.6.30 (cli) (built: Jan 19 2017 07:57:06) 
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies

PHPインストールの確認が取れたら、続いてパッケージのインストールを行う。

console
# その他パッケージのインストール
$ yum install --enablerepo=remi --enablerepo=remi-php56 php-opcache php-devel php-mbstring php-mcrypt php-mysqlnd

一度PHPをアンインストールする場合

console
# PHPアインストール
$ yum remove php*

Composerインストール

console
$ yum install composer 

でインストールできるとのことだが、私は次の方法でインストールを行った。

console
# Composerコマンドツールダウンロード
$ curl -sS https://getcomposer.org/installer | php
# どこからでも起動できるようパスの通っているディレクトリに移動させる
$ sudo mv composer.phar /usr/local/bin/composer

# Composerのバージョン確認
$ composer --version

# 出力結果
   ______
  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                /_/
Composer version 1.3.2 2017-01-27 18:23:41

Do not run Composeras root/sper user!...と表示される場合

Rootユーザーで実行するな!と怒られます。ローカルユーザーに切り替えて実行してください。

console
$ su - <username>
$ composer -version

Laravelインストーラー ダウンロード

console
# Laravel Installerのダウンロード
$  composer global require "laravel/installer=~1.1"

Laravel Project生成

console
# /var/www/html配下にsampleプロジェクトを生成
$ composer create-project laravel/laravel /var/www/html/sample --prefer-dist

# アクセス権を変更
$ chmod 777 /var/www/html/sample

# 念のためApatchを再起動
$ systemctl restart httpd

テストサーバー起動

console
$ cd /var/www/html/sample/
$ ls
# ファイル一覧
app
artisan  # ビルトインサーバー起動ファイル
bootstrap
composer.json
composer.lock
config
database
gulpfile.js
package.json
phpspec.yml
phpunit.xml
public
readome.md
resources
server.php
storage
tests
vendor

# ビルトインサーバーを起動する
php artisan serve --host 0.0.0.0

ここで--host 0.0.0.0の記述を追加することで、社内LAN上のクライアントからIPアドレスでアクセスすることができるようになる。
php artisan serveのみでも起動は可能。

クライアントからアクセスしてみる

アクセス先URLはデフォルトで localhost:8000 となっている。
クライアントからアクセスする場合、localhostの部分をサーバーIPアドレスに書き換えればOK。
なお、ここでアクセス出来ない場合、Firewallの部分で引っかかっている可能性が考えられる。

ファイアーウォールを一時的に止める

console
$ systemctl stop firewalld

182.png
待ちに待ったトップ画面。

参考文献

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした