Installation

PHP 5.3.0, 5.3.1 und 5.3.2 haben keine SNMP Unterstützung. In PHP 5.3.3 wurde SNMP Unterstützung wieder eingeführt.

Die Windowsdistribution von Net-SNMP enthält eine Unterstützung für SNMP im Verzeichnis mibs. Dieses Verzeichnis sollte als MIBDIRS zu den Windows Umgebungsvariablen hinzugefügt werden, wobei der Wert der vollständige Pfad zum mibs Verzeichnis sein sollte, z.B. c:\usr\mibs.

Wichtiger Hinweis für PHP vor 5.4: Um das UCD-SNMP-Paket nutzen zu können, müssen Sie vor dem Kompilieren NO_ZEROLENGTH_COMMUNITY als 1 definieren. Nachdem UCD SNMP konfiguriert ist, bearbeiten Sie bitte die Datei config.h oder acconfig.h und suchen Sie nach NO_ZEROLENGTH_COMMUNITY. Kommentieren Sie die #define-Zeile aus. Das Ergebnis sollte wie folgt aussehen:

#define NO_ZEROLENGTH_COMMUNITY 1
Kompilieren Sie jetzt PHP mit --with-snmp[=DIR] .

Wenn seltsame "segmentation faults" in Verbindung mit SNMP-Kommandos auftauchen, wurden die obigen Anweisungen nicht korrekt befolgt. Wenn Sie UCD SNMP nicht neu kompilieren wollen, können Sie PHP mit dem --enable-ucd-snmp-hack -Switch kompilieren, dies stellt einen Workaround dar.

add a note add a note

User Contributed Notes 4 notes

up
-1
flintjt att hotmail dot com
4 years ago
For win32 (tested on win XP and 2k3 server 32bit):
Tested with versions 5.3.3 VC9, and 5.3.6 VC9.
The php_snmp.dll, requires that you set the environment variable MIBDIRS pointed to your MIBs folder.
up
-3
Darren Wolfe
3 years ago
If PHP complains that some mibs are missing and they are not included in your windows php package, they can be obtained from the source package of net-snmp itself.
up
-4
Coffee-fan
2 years ago
In order to build and install php in Ubuntu 12.10, beyond the normal "build-essential" package, I had to install the following packages: apache2-prefork-dev  libxml2-dev libsnmp libsnmp-dev libtool

Command line should be like this:

sudo apt-get install apache2-prefork-dev libxml2-dev libsnmp libsnmp-dev libtool
up
-4
bug404 at free dot fr
10 months ago
If net-snmp was not installed in default c:\usr folder (which may be the case for most peoples used to Windows instead of Linux), then, you should also create SNMP_PERSISTENT_DIR system environment variable with "persistent" folder location (located in snmp folder).
Otherwise, php will will create its own persistant folder in c:/usr/snmp/persistent folder, which is probably not what you want !
To Top