回答:
/var/log/apache2/error.log
PHPが正常にロードされた場合、次のような行が表示されます。
[2011年8月30日12:53:36] [通知] Apache / 2.2.14(Ubuntu)PHP / 5.3.2-1ubuntu4.9とSuhosin-Patchの構成-通常の操作の再開
日付に注意してください。2009年からのものである場合は、何かを誤って設定しています。
AddType
役に立たない、あなたが使用する必要があります:
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
Apache 2.xについては、php.netのインストール手順も参照してください。
パッケージを手動で追加する必要はありません。パッケージにlibapache2-mod-php5
は以下が/etc/apache2/mods-available/php5.conf
含まれます。
<IfModule mod_php5.c>
<FilesMatch "\.ph(p3?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
# To re-enable php in user directories comment the following lines
# (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
<IfModule mod_userdir.c>
<Directory /home/*/public_html>
php_admin_value engine Off
</Directory>
</IfModule>
</IfModule>
conffileであるため、アップグレードでインストールされない可能性があります。そのパージを修正してから、再度インストールするには:
sudo apt-get purge libapache2-mod-php5
sudo apt-get install libapache2-mod-php5
PHPを有効にするには、次を実行する必要があります。
sudo a2enmod php5
次の後にWebサーバーを再起動します。
sudo /etc/init.d/apache2 restart
他にやるべきこと:
/etc/apache2
。sudo apache2ctl configtest
して構成の構文エラーを確認しますstatus
モジュールをロードする必要があります。リモートサーバーを実行している場合は、Allow from
リストに自分を追加し、/etc/apache2/mods-enabled/status.conf
その後サーバーを再起動する必要がありますほかに何も機能せず、Apacheが非常に混乱し始めた後、ついにすべてのApacheパッケージを削除して再インストールしました。
今はうまく機能しているようです。
編集
Apacheの構成設定を再度セットアップするときに、何が間違っていたのかがわかりました。[このブログエントリ] [1]で説明しています。
userdirモジュールはアクティブに使用されていませんが、残りのサイトファイルは〜/ public_htmlフォルダーにあり、そこにあるすべてのものに対してphpが無効にされていました。
これは、私のKarmic設定にはないphpモジュールへの最近の追加だったに違いないと思います。
/etc
コピーされません(少なくとも、/etc/init.d/apache2
再インストールでは作成されず、purge + installでのみ作成されるという問題がありました)