Armadilloフォーラム

Armadillo-640 PHPインストール後のlighttpd起動エラーについて

mato_developer

2019年10月28日 8時40分

お世話になっております、上園と申します。

Armadillo-640にて、lighttpdとPHP7.0を使用してデータベース(sqlite3)を操作する
Webアプリケーションの開発を行っていますが、下記の状況が発生しておりますので、
お知恵を拝借したいと思います。

バージョン情報や、ブートログ、lighttpdのステータスログ等添付いたしますが、
必要な情報があればご指摘をお願いします。

誠に恐縮とは思いますが、ご教示ののほどよろしくお願いいたします。

【状況】

PHPをインストール後でlighttpdが起動しない。

lighttpd.confを初期状態に戻し、restartを行いましたが再起動に失敗しています。
(ステータス確認コマンドで、Activeがfailed、詳細はerrlog.txt参照)

PHPをインストールするまでは問題なく動作していますので、PHPが原因だと思いますが、
どのように修正すればいいのか検討がついていません。

【変更内容】
・sdカードとusbオートマウント設定済
・sdカードは3パーティション確保し、lighttpdでアクセスするのはパーティション1
(/mnt/sd1でアクセス)

【確認事項】

・lighttpdのエラーログには登録されていない。
・lighttpd.confは、server.document-rootとindex-file.names以外はデフォルト設定
・PHPについては、特に変更していない。

以上、よろしくお願いいたします。

ファイル ファイルの説明
bootlog.txt 現状のブートログ
errlog.txt lighttpdのステータスログ
version.txt Debianと各ツールのバージョン
lighttpd.conf lighttpdのconfigファイル
コメント

install php すると apache インストールされちゃいますね。
(起動ログを見るとapacheがポート先取しているのがわかりました)

これは php パッケージの実体 php7.0 の依存先が標準で libapache2-mod-php7.0
になっていることによるものです。
https://packages.debian.org/stretch/php7.0

インストール時には下記の感じでインストールの承諾が求められています。

# apt install lighttpd php
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  apache2 apache2-bin apache2-data apache2-utils bzip2 file libapache2-mod-php7.0
[略]

解決方法はphpではなく php-fpm (FastCGIの場合)もしくは php-cgi (普通のCGIの場合)
というパッケージをインストールします。

# apt install lighttpd pfp-fpm

ただ、もうapt install phpでインストールしてしまっている場合は apache を削除するだけで
自動的に php-fpm が代わりにインストールされます。

# apt remove apache apache-bin
[中略]
The following additional packages will be installed:
  libapparmor1 php7.0-fpm
Suggested packages:
  php-pear
The following packages will be REMOVED:
  apache2-bin libapache2-mod-php7.0
The following NEW packages will be installed:
  libapparmor1 php7.0-fpm
[略]

at_ohsawa様

お世話になっております、上園です。

ご教示いただきましてありがとうございます。

> ただ、もうapt install phpでインストールしてしまっている場合は apache を削除するだけで
> 自動的に php-fpm が代わりにインストールされます。

ご指摘の通り、apache2を削除することでブート後の起動と常駐されることを確認しました。
configで通常CGIを設定しているので、 php-cgi (普通のCGIの場合)が代わりにインストールされました。

ブラウザからhtmlファイルにアクセスすると、PHPインストする前と同じように動作することが
確認できました。

とりあえず、開発作業が進めることができます。
誠にありがとうございました。