_NNN_
@_NNN_ (hehe hehe)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

Forbidden 403とエラーが出てLaravelアプリが表示できない

解決したいこと

dockerを使用してLaravel開発環境(LAMP環境)を導入した後に一度正常に動作するか確認すべく、ブラウザから確認しようと思ったら上記のようなエラーが出てしまい正常に閲覧、表示ができなく詰まってしまったので質問しました。

環境

PHP 7.3.24
Laravel 8.74.0
docker 20.10.10
mysql 5.7.29
phpmyadmin

ファイル構成

project/
 ├ docker/
 │   ├ php-apache/
 │   │     └ apache.conf
 │   │     └ Dockerfile
 │   │     └ php.ini
 │   └ docker-compose.yml
 └ myapp(laravelプロジェクト)

ファイル内容

docker-compose.yml
version: "3"
services:
  mysql:
    image: mysql:5.7.29
    container_name: mysql    
    ports:
      - '3306:3306'
    environment:
      MYSQL_ROOT_PASSWORD: root
      MYSQL_DATABASE: default
      MYSQL_USER: default
      MYSQL_PASSWORD: secret
      TZ: 'Asia/Tokyo'
    command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
  app:
    build: php-apache
    container_name: myapp
    ports:
      - '8000:80'
    volumes:
      - ../myapp:/var/www/myapp:cached
  phpmyadmin:
    image: phpmyadmin/phpmyadmin
    ports:
      - 8080:80
    environment:
      - PMA_ARBITRARY=1
      - PMA_HOST=mysql
      - PMA_USER=root
      - PMA_PASSWORD=root
    container_name: "phpmyadmin"

Dockerfile↓

FROM php:7.3-apache

COPY --from=composer /usr/bin/composer /usr/bin/composer
RUN apt-get update && apt-get install -y \
    curl -sL https://deb.nodesource.com/setup_11.x | bash - \
    apt-get install -y nodejs \
    npm install npm@latest -g \
    unzip \
    libzip-dev \
    zlib1g-dev \
    && docker-php-ext-install \
    zip \
    pdo_mysql \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/* \
    && a2enmod rewrite
COPY ./apache2.conf /etc/apache2/apache2.conf
# COPY ./php.ini /usr/local/etc/php/php.ini

WORKDIR /var/www/myapp
startup.sh
cp .env.example .env
composer install
touch /var/www/myapp/storage/logs/laravel.log
chmod -R 777 /var/www/myapp/storage
chmod -R 777 /var/www/myapp/bootstrap
php artisan key:generate
php artisan migrate
php artisan db:seed

docker exec -it myapp bashコマンドでphpコンテナに移動してsh startup.shで必要なコマンドは実行するようにしてます。

調べたこと等

・publicフォルダにはindex.phpファイルあり
・調べてみた結果ルーティングなどが関係してるかと思いましたが、まだサーバー周りの細かいところまで触ったことがなくよくわからない状態です。

恐らく情報量が不十分なのでお聞きしてくだされば調べて可能な限りソースコードなどご提示しますので、諸先輩方ご教授のほど、よろしくお願い致します。

0

1Answer

Your answer might help someone💌