勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ

Podmanコンテナ環境にLaravel 13系をインストールしHello Worldページ表示まで行う方法

  PHP Laravel

先日Podmanコンテナ環境(PHP 8.4.25)にCodeIgniterをインストールしたが、今回はlaravelを同じようなディレクトリ構成でインストールしてみたい。また、Hello Worldページ表示まで行いたい。以下に対応方法をメモ。

 

やりたいこと

  • 「/var/www/html/test.com/laravel_test」ディレクトリにCodeIgniter 4をインストール
  • ブラウザからは「test.com/admin/laravel_test」でアクセス

尚、通常のWeb公開用ディレクトリは「/var/www/html/podman/test.com/public」になる。

 

対応方法

Laravelのインストール

「/var/www/html/test.com/laravel_test」ディレクトリを作成し、以下でインストール。

podman exec \
    -w /var/www/html/test.com/laravel_test \
    web-container \
    composer create-project laravel/laravel .

apache側設定

バーチャルホスト設定用ファイル(vhost.conf)に以下を追記する。

Alias /admin/laravel_test "/var/www/html/test.com/laravel_test/public"

<Directory "/var/www/html/test.com/laravel_test/public">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

ファイル権限設定

過去記事で作成したシェルスクリプトでファイル権限を設定する。

set_perms.sh

laravel側設定

/laravel_test/public/.htaccess

以下を追記。

RewriteRule ^(\.env)$ - [F,L]

/laravel_test/resources/views/hello.blade.php

<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>hello world</title>
</head>
<body>
    <h1>hello world</h1>
</body>
</html>

/laravel_test/routes/web.php

以下を追記。

Route::get('hello', function () {
    return view('hello');
});

動作確認

ここまでで問題無ければ「test.com/admin/laravel_test/hello」にアクセスするとページが表示され、「test.com/laravel_test/ci4_test/.env」にアクセスするとapache側で403になる筈。

 

リファレンス

公式

https://laravel.com/framework/docs

日本語サイト

https://readouble.com/laravel/13.x/ja/installation.html

 - PHP Laravel

  関連記事

Laravelのディレクトリ構造・バージョン・DB接続情報確認
Laravelのディレクトリ構造・バージョン・DB接続情報確認

Laravelで作成されているシステムに携わることがあった。しかしながら当方La ...