buildrootで構築された組み込みApache WebサーバーのPHP

buildrootで構築された組み込みApache WebサーバーのPHP

だから私はbuildrootを使って組み込みApache Webサーバーを構築しましたが、PHPコードを実行しないこと以外はうまくいきます。私のシステムのコマンドラインから.phpファイルを実行できますが、ブラウザでこれらの.phpファイルを開くと、PHPコードは実行されず、すべてのPHPコードを無視してhtmlとして解釈します。

/etc/apache2/httpd.confファイルを確認しましたが、phpモジュールをロードする行があります。

LoadModule php7_module     modules/libphp7.so

PHPを実行する方法を知っている人はいますか?

関連する可能性のあるディレクトリとファイルに関するいくつかの情報をお知らせします。

/など/

  • Apache 2/

  • php-fpm.conf

  • PHP-fpm.d/

  • php.ini

/etc/apache2/

  • 追加/

  • httpd.conf.bak

  • 無言のタイプ

  • httpd.conf

  • 魔法

  • オリジナル/

/usr/lib/php/

  • (空)

/usr/モジュール/libphp7.so

答え1

モジュール(httpd.confファイルに質問の内容に従って実行されたことが示されている)をロードするだけでなく、SetHandlerディレクティブ*.phpやその他の適切な拡張を使用する必要があります。

これはうまくいくはずです。ただドアの後ろに入れてくださいLoadModule

<FilesMatch ".+\.ph(p[3457]?|t|tml)$">
    SetHandler application/x-httpd-php
</FilesMatch>

上記のステートメントの目的は、Apacheに特定の拡張子を持つファイルを処理する方法を教えることです。これは、ファイルの他の端(文字列の終わりを表す).+\.ph(p[3457]?|t|tml)$と一致する正規表現です。そのため、などで終わるファイルがブラウザに転送されます。$.php.php3.php4

httpdサービスを再起動することを忘れないでください。

それでも機能しない場合は、ロードするモジュールを参照するパスを確認し、モジュールがlibphp7.soロードする正しい場所にあることを確認してください。

関連情報