PHP - Laravel - API - 設定


 クラウディア


1. 概要
2. httpd.conf
3. .conf
4. bootstrap/app.php
5. 参考サイト

1. 概要

 「Laravel 12」で「API」アクセスするための基本的な設定になります。  「API」にポート番号「8080」でアクセスするものとして。

2. httpd.conf

 「root」ユーザ権限で。

vi /usr/local/etc/apache24/httpd.conf

Listen 80
 の下に、下記の行を追加します。

Listen 8080

#LoadModule rewrite_module libexec/apache24/mod_rewrite.so
 の箇所を下記へ変更します。

LoadModule rewrite_module libexec/apache24/mod_rewrite.so
LoadModule php_module         libexec/apache24/libphp.so

3. .conf

 「Laravel」のサイトへ、「http://examlpe.com/」でアクセスしているものとして。  「root」ユーザ権限で。

vi /usr/local/etc/apache24/Includes/laravel.conf
 もともと、こう書いていたものに。

<VirtualHost *:80>
    DocumentRoot /usr/local/www/laravel/public

    <Directory "/usr/local/www/laravel/public/">
        Options +ExecCGI +Followsymlinks -Indexes +Includes
        AllowOverride All

        <RequireAll>
            Require all granted
        </RequireAll>
    </Directory>
</VirtualHost>
 下記を追加します。  まったく同じ内容で、8080 ポートを追加しただけになります。

<VirtualHost *:8080>
    DocumentRoot /usr/local/www/laravel/public

    <Directory "/usr/local/www/laravel/public/">
        Options +ExecCGI +Followsymlinks -Indexes +Includes
        AllowOverride All

        <RequireAll>
            Require all granted
        </RequireAll>
    </Directory>
</VirtualHost>

4. bootstrap/app.php

 「Laravel 12」以降の場合、ここが最重要かもしれない。  (「Laravel 11」は、未確認ですが、「Laravel 12」と同様のはず。)  「Laravel 10」までは、デフォルトで。

app/Providers/RouteServiceProvider.php
 というファイルが用意されていて。  そこで、「api」ルートも定義されています。  「Middleware」の追加も、そのファイルで行うのですが・・・。  「Laravel 12」では、仕掛けが異なります。  サイトの管理者の権限で、プロジェクトディレクトリへ移動して。

vi bootstrap/app.php
 デフォルトで下記のように記述されています。

<?php

use Illuminate\Foundation\Application;
use Illuminate\Foundation\Configuration\Exceptions;
use Illuminate\Foundation\Configuration\Middleware;

return Application::configure(basePath: dirname(__DIR__))
    ->withRouting(
        web: __DIR__.'/../routes/web.php',
        commands: __DIR__.'/../routes/console.php',
        health: '/up',
    )
    ->withMiddleware(function (Middleware $middleware): void {
        //
    })
    ->withExceptions(function (Exceptions $exceptions): void {
        //
    })->create();
 9、10行の間に 1行追加します。

return Application::configure(basePath: dirname(__DIR__))
    ->withRouting(
        web: __DIR__.'/../routes/web.php',
		api: __DIR__.'/../routes/api.php',
        commands: __DIR__.'/../routes/console.php',
        health: '/up',
    )
 「Middleware」を追加する場合は、13~15行の間に行を追加していきます。  「Middleware」の詳細については、「Laravel - クラス・ミドルウェア」をご参照ください。

5. 参考サイト

 本ページは、「ChatGPT」くんを参考にさせていただきました。

AbemaTV 無料体験
健康サポート特集