カテゴリー: Laravel

  • ubuntuでlaravelを動かす手順

    DocumentRootの変更

    sudo gedit /etc/apache2/sites-enabled/000-default.conf
    ここでDocumentRootの変更をする
    DocumentRootの設定変更を次のようにする。
    sudo gedit /etc/apache2/apache2.conf

    mod_rewriteが利用可能となっているかを確認する。

    cat /etc/apache2/mods-available/rewrite.load
    次のように表示されればインストールはされている
    LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so
    有効にするには
    sudo a2enmod rewrite
    そして
    sudo systemctl restart apache2
    とすれば有効になる

  • Laravelをxdomainに設置する方法のメモ

    VPS(Virtual Private Server)などでは、httpd.confがいじれるためにDocumentRootを変更できるが無料レンタルサーバーなどでは、Laravel を設置するのは、下記のように行う。

    他のレンタルサーバーでは次の方法だけでいいようだ。「Laravelディレクトリ/public/」の中身全部を公開されるディレクトリのルート、xdomainならFTPから見れるルート「/」にコピー。ルートの「index.php」の中の「require __DIR__.’/../vendor/autoload.php’;」を「require __DIR__.’/Laravelディレクトリ/vendor/autoload.php’;」に修正。「$app = require_once __DIR__.’/../bootstrap/app.php’;」を「$app = require_once __DIR__.’/Laravelディレクトリ/bootstrap/app.php’;」に修正。

    さらにxdomain特有の修正は、.htaccessの修正が必要になります。mod_negotiation.c がxdomainのApacheにはないようだ。

    <IfModule mod_rewrite.c>
    # <IfModule mod_negotiation.c>
    # Options -MultiViews -Indexes
    # </IfModule>

    RewriteEngine On

    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} (.+)/$
    RewriteRule ^ %1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
    </IfModule>

  • Fedora27WorkstationにLaravel 5.5を設置する

    Laravel 5.5の動作環境は、「https://readouble.com/laravel/」によると

    • PHP >= 7.0.0
    • OpenSSL PHP拡張
    • PDO PHP拡張
    • Mbstring PHP拡張
    • Tokenizer PHP拡張
    • XML PHP拡張

    なので、次のパッケージをインストールする。

    1. $su –
    2. #dnf -y install php php-common php-pdo php-mbstring php-xml php-pear
    3. #exit

    次に「composer」をインストールします。composerの中身はphpなので、「https://getcomposer.org/」からダウンロードしても構いません。

    1. $su
    2. #dnf -y install composer
    3. #exit

    composerを使ってLaravelをインストールします。次の例は、Laravel 5.5を「blog」というディレクリにインストールします。rootユーザでは実行しないでくださいとエラーが出てたので、一般ユーザで実行してください。/var/www/htmlなどに入れる場合 #chmod 755 /var/www を実行する必要があると思います。

    • $composer create-project –prefer-dist laravel/laravel blog “5.5.*”

    10分程度かかります。赤色で囲まれたメッセージが出たときは、読んで、対応して、もう一度実行してください。

    SELinux環境では次のコマンドも参考にしてください。

    • sudo semanage fcontext -a -t httpd_sys_content_t ‘/var/www/html(/.*)?’
    • sudo restorecon -R /var/www/html
    • sudo chcon -R -t httpd_cache_t /var/www/html/blog/storage
    • sudo chcon -R -t httpd_cache_t /var/www/html/blog/bootstrap/cache

    その他、パーミッション設定

    • $sudo chmod 755 /var/www
    • $sudo chmod 777 /var/www/html
    • $sudo chmod -R 777 storage
    • $sudo chmod -R 777 bootstrap/cache

    よくわからない設定 $sudo chown -R root:apache /var/www

    最後に、/etc/httpd/conf/httpd.confのDocumentRootを「/var/www/html/blog/public/」に変更して「http://localhost」でアクセスして、「Laravel」と中央に表示されれば成功です。