web-dev-qa-db-ja.com

UbuntuのLinux 12.04 LTSでどのPHP拡張機能が有効/無効にされているかを確認する方法は?

ローカルマシンでUbuntu Linux 12.04 LTSを使用しています。私はずっと前にLAMPをマシンにインストールしました。次に、次のPHP拡張機能を有効にします。

  1. php_Zip
  2. php_xml
  3. php_Gd2

まず、これらのPHP拡張機能が有効になっているかどうかを確認します。インストール/有効化されたPHP拡張をチェックする方法について多くのことを検索しましたが、Ubuntu Linuxでこれらの拡張をインストールする方法を見つけるたびに。 Ubuntu Linux 12.04 LTSで有効/無効になっているPHP拡張機能を確認する方法を教えてください。前もって感謝します。

55
PHPLover

インストール済みのPHPモジュールとパッケージの確認

実行に加えて

php -m

インストールされているphp modulesのリストを取得するには、Ubuntuで現在インストールされているphp packagesのリストを取得すると便利です。

Sudo dpkg --get-selections | grep -v deinstall | grep php

Ubuntuはphp modulespackages経由で利用可能にするため、これは役立ちます。

次に、利用可能なUbuntu php packagesから選択して、必要なmodulesをインストールします。

Sudo apt-cache search php | grep "^php5-"

または、Ubuntu 16.04以降の場合:

Sudo apt-cache search php | grep "^php7"

あなたが述べたように、あなたが必要とするかもしれないパッケージの実際のインストールに関して利用可能な多くの情報があるので、私はそれについてここで詳細に行きません。

関連:インストール済みのPHPモジュールの有効化/無効化

インストール済みモジュール無効であった可能性があります。その場合、php -mを実行しているときは表示されませんが、インストールされているUbuntuパッケージのリストには表示されます。

モジュールは、php5enmodパッケージの一部であるphp-commonツール(後のディストリビューションではphpenmod)を使用して有効/無効にできます。

buntu 12.04:

有効なモジュールは/etc/php5/conf.dでシンボリックリンクされています

buntu 12.04:(PHP 5.4+を使用)

インストール済みモジュールをenableするには:

php5enmod <modulename>

インストール済みモジュールをdisableにするには:

php5dismod <modulename>

buntu 16.04(php7)以降:

インストール済みモジュールをenableするには:

phpenmod <modulename>

インストール済みモジュールをdisableにするには:

phpdismod <modulename>

Apacheのリロード

有効/無効にした後、Apache2をリロードすることを忘れないでください:

service Apache2 reload
119
Werner

この拡張機能が有効になっているかどうかを確認するには、phpファイル、つまりinfo.phpを作成し、そこに次のコードを記述します。

<?php 
echo "Gd: ", extension_loaded('Gd') ? 'OK' : 'MISSING', '<br>';
echo "XML: ", extension_loaded('xml') ? 'OK' : 'MISSING', '<br>';
echo "Zip: ", extension_loaded('Zip') ? 'OK' : 'MISSING', '<br>';
?>

それでおしまい。

25
Tahsin Abrar

php -mを介して、ターミナルを介して使用可能なモジュール(コンパイル済み)を表示できます。

7
TheKarateKid

検索拡張機能

/etc/php5/Apache2/php.ini

2
user1762635

php extensionsなどの詳細については、サイトをご覧ください。

  1. 新しいファイルを作成し、info.php(または他のname.php)という名前を付けます

  2. 次のコードを記述します。

     <?php
       phpinfo ();
     ?>
    
  3. サイトのroot(ホーム)にファイルを保存します

  4. ブラウザでファイルを開きます。例:example.com/info.phpサイトのphp情報がすべて表示されます。
2
Che

おそらく、どの拡張機能が(コンパイルおよび)ロードされているか(cliではなく)を確認する最も簡単な方法は、サーバーで次を実行することです。

<?php
$ext = get_loaded_extensions();
asort($ext);
foreach ($ext as $ref) {
    echo $ref . "\n";
}

PHP cliには、必ずしも同じ拡張機能がロードされているわけではありません。

2
geoB