Windows版PHPでSNMPモジュールを有効にする - PHP

Windows版PHPでSNMPモジュールを有効にする手順を紹介します。

事前準備

mibファイルが必要になりますので、Windows用の net-snmpをインストールしておく必要があります。net-snmpのインストール手順の詳細はこちらの記事を参照してください。

設定手順

mibファイルのディレクトリの確認

mibファイルの位置を確認します。デフォルトの設定でnet-snmpをインストールした場合は、
C:\usr\share\snmp\mibs
にmibファイルが配置されています。

環境変数への追加

スタートボタンを右クリックし、表示されるポップアップメニューで[システム]をクリックします。


[システム]ウィンドウが表示されます。左側の[システムの詳細設定]のリンクをクリックします。


[システムのプロパティ]ダイアログが表示されます。上部のタブの[詳細設定]タブをクリックして選択します。下図の画面が表示されます。ダイアログ下部の[環境変数]のボタンをクリックします。


[環境変数]ダイアログが表示されます。ウィンドウの下部分の[システム環境変数]の枠の下部の[新規]ボタンをクリックします。


[新しいシステム変数]ダイアログが表示されます。


[変数名]のテキストボックスに"MIBDIRS"を入力します。また、変数値にmibファイルのあるディレクトリのパスを入力します。今回の例であれば、"C:\usr\share\snmp\mibs" を入力します。入力後、[OK]ボタンをクリックします。


[新しいシステム変数]ダイアログが閉じられ、[環境変数]ダイアログに戻ります。[システム環境変数]の一覧に"MIBDIRS"の変数が追加されていることが確認できます。

php.iniの編集

php.iniファイルを編集します。php.iniファイルが存在しない場合は、php.exe ファイルのあるディレクトリにphp.iniファイルを作成します。php.iniファイルに以下の記述を追記します。
[PHP]
extension_dir = "ext"
extension=php_snmp.dll

PHPの再読み込み(再起動)

アプリケーションプールをリサイクルして、PHPを再読み込みします。IISマネージャーを起動し、左側のツリービュー[アプリケーションプール]のノードをクリックして選択します。下図の画面が表示されます。


[DefaultAppPool]の項目をクリックして選択し、右クリックします。下図のポップアップメニューが表示されますので、[リサイクル]メニューをクリックします。


または、IISのWebを再起動して、PHPを再起動します。IISマネージャーを起動し、左側のツリービューでWebサイトのノードをクリックして選択し、右クリックします。下図のポップアップメニューが表示されますので、[Web サイトの管理]メニューの[再起動]をクリックします。

snmpモジュールの有効化の確認

phpinfo();関数を呼び出すページを開き、phpの情報を確認します。snmpのモジュールが有効になっている場合、"snmp"セクションの "NET-SNMP Support"の項目が"enabled"の表示になります。


以上で設定は完了です。

著者
iPentecのプログラマー、最近はAIの積極的な活用にも取り組み中。
とっても恥ずかしがり。
掲載日: 2017-07-24
iPentec all rights reserverd.