- このトピックには5件の返信、1人の参加者があり、最後にEasyMail管理者により3年、 2ヶ月前に更新されました。
-
投稿者投稿
-
2021年9月21日 1:42 PM #3894kobayashiゲスト
はじめまして。
カスタマイズ可能なメールフォームを探しており、こちらのメールフォームが希望に近い動作をしてくれるのではと期待しております。さて、インストールを試みたのですが、セットアップ画面に情報を入力し「設定する」を押すと、遷移後の画面で500番エラーとなってしまいます。
環境は以下の通りです。- XSERVER
- PHP 7.4.13
- Apache
- MySQL 5.7.27(UTF-8 Unicode)
Laravelのエラーログを確認すると以下のようなエラーが表示されておりました。
production.ERROR: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'beforeunload_flag' in 'field list' (SQL: insert into
forms
(admin_email
,bcc_email
,beforeunload_flag
, `(以下略)2020_02_20_174440_create_forms_table.php
が存在すること
migrationファイルに
$table->boolean( 'beforeunload_flag' )->default(true);
の記述があることは確認しましたが、データベースを見ると確かにbeforeunload_flag
のカラムは生成されていないようです。phpMyAdminの
forms
テーブルのスクリーンショットのURLを添付します。
データベースが5.7.2と要件の5.7.7よりも少し前のバージョンとなっているため
#180のようにMySQLバージョンの差異によるものと疑っております。
(XSERVERの仕様上、5.7.xのx部分は指定ができないようです。)仕様要件外からの質問となってしまい大変心苦しいのですが
お力添えを賜りますようお願い申し上げます。2021年9月21日 1:44 PM #3895kobayashiゲストすみません、投稿エラーとなり貼りなおした際にaタグで記入したURLが消えてしまったようです。
URLそのままで再送信させていただきます。以下がphpMyAdminのスクリーンショットとなります。
https://drive.google.com/file/d/1YqUT6pfdfHkDDKcoWdhG7hnhlTAjV8WP/view?usp=sharing2021年9月21日 4:57 PM #3897EasyMail管理者キーマスターご投稿いただきありがとうございます。
何らかの原因でmigrationが止まった?ということなのかなと思いながら調べてはみたのですが、
今のところ何が原因なのか推測が難しいです。
弊社内でも、制作スタッフ用にXserverを利用することがあり、EasyMailも何度となくXserver上で動作させています。
ご指摘いただいた通り、データベースの違いがあるのかなとも思えます。
利用中のサーバーはPHP7.4.13でした。
一応、ご参考までに、Mysqlのstatusを載せておきます。(一部伏字にさせていただきます)
また、なにかわかりましたら、このフォーラムに投稿させていただきます。mysql> status
———————-
mysql Ver 15.1 Distrib 5.5.64-MariaDB, for Linux (x86_64) using readline 5.1Connection id: **********
Current database:
Current user: ********@sv****.xserver.jp
SSL: Not in use
Current pager: stdout
Using outfile: ”
Using delimiter: ;
Server: MySQL
Server version: 5.7.27 MySQL Community Server (GPL)
Protocol version: 10
Connection: mysql****.xserver.jp via TCP/IP
Server characterset: utf8mb4
Db characterset: utf8mb4
Client characterset: utf8mb4
Conn. characterset: utf8mb4
TCP port: 33062021年9月21日 5:20 PM #3899kobayashiゲストご返答いただきありがとうございます。
当方の環境下でもstatusコマンドを実行してみましたので、参考までにご確認ください。mysql Ver 15.1 Distrib 5.5.64-MariaDB, for Linux (x86_64) using readline 5.1
Connection id: **********
Current database:
Current user: ********@sv****.xserver.jp
SSL: Not in use
Current pager: stdout
Using outfile: ”
Using delimiter: ;
Server: MySQL
Server version: 5.7.27 MySQL Community Server (GPL)
Protocol version: 10
Connection: mysql****.xserver.jp via TCP/IP
Server characterset: utf8mb4
Db characterset: utf8mb4
Client characterset: utf8mb4
Conn. characterset: utf8mb4
TCP port: 3306通常であればXserver上で問題なく動作するとのことですので
タイムアウトや接続不安定の可能性も加味し、当方でも再度最初からインストールを実行してみようと思います。
こちらでも、なにか分かり次第書き込ませていただきます。お手数をお掛け致しますがよろしくお願いいたします。
2021年9月21日 6:02 PM #3904kobayashiゲストお世話になっております。
先ほど頂いたstatusコマンドの結果が全く同じだったため
純粋な「インストール失敗」の可能性を考慮し
さきほどのスレッド記入後、クリインストールを試してみたのですが
問題なくインストールが完了しました。お手数をお掛けして調査を行っていただいたにも関わらず
申し訳ございません。
真っ先にクリーンインストールを試してみるべきでした……。
(laravelのログの出方がピンポイントだったので、単なる失敗の可能性を疑うことを失念しておりました…。)migrationの途中でコケるというのは少々不可解なのですが
実際、formsテーブルのMigration中のbeforeunload_flag
以降のカラムが生成できていない状態でした。
Laravelのmigrationはファイル作成の古い順で実行されたかと記憶していますが
2020_02_20_174440_create_forms_table.php
より後の日付である
2020_02_20_174445_create_form_blocks_table.php
で生成されるform_blocksテーブルなどは存在しておりました。
(テーブル自体は全て生成できていたと思います。明らかにカラム数の少ないテーブル、というのも見受けられませんでした。)だとすると、formsテーブルの生成の一部のみスキップされたことになり、なんだかな、という感じです……。
単純な接続不安定や一瞬のタイムアウトがあった、ということでしょうか……。おそらく再現性は低いかと思いますので、一旦これにてクローズとさせていただければと思います。
もし何か原因がわかりましたら、お教え願えますと幸いです。お手数をお掛け致しまして申し訳ございませんでした。
迅速かつ丁寧な対応に心より感謝申し上げます。
(Mysqlのstatusを頂かなければ、クリーンインストールの必要性に気付かず途方に暮れていたかもしれません。)また使用していく中で何かございましたらよろしくお願いいたします。
この度はありがとうございました。2021年9月21日 6:10 PM #3905EasyMail管理者キーマスターインストールが出来たことで、一旦安堵しております。
いままでマイグレーションが正常に終了しなかったケースはなかったので、
今後の開発時には、動作に注意しながら制作してまいります。
また、何かしら原因特定につながるようなことがわかりましたら、ご報告させていただきます。
お手数をおかけしました。
今後ともよろしくお願いいたします。 -
投稿者投稿
- このトピックに返信するにはログインが必要です。