SiteBar wurde als Lösung für Menschen entwickelt die ihre Bookmarks weltweit online verfügbar haben wollen ohne sie zum Beispiel synchronisieren zu müssen.
Allerdings ist es ebenfalls sehr nützlich zur Erstellung eines Online-Menüs für NagVis und auch Nagios (cgi-Url's).
Vorteile:
Nachteile:
Die SiteBar-Benutzerverwaltung ist lediglich im Zusammenhang mit NagVis als Kontra-Punkt zu betrachten. Auch hält sich der zusätzliche Administrationsaufwand für diejenigen in Grenzen die eh bereits MySQL für Nagios/NagVis verwenden. In meinen Augen überwiegen die Vorteile.
Im Gegensatz zu den Angaben in der Original-Anleitung habe ich festgestellt, dass das Development Release 3.4 von SiteBar benötigt wird http://sitebar.org/downloads.php (nightly trunk).
Dieses widerum setzt voraus, dass PHP in der Version 5.2 installiert ist.
SiteBar-Daten werden in einer Datenbank gespeichert. Hierfür sollte MySQL vorinstalliert sein.
Und selbstverständlich wird noch eine WebServer-Software benötigt. Ich empfehle den Apache Http-Server.
Abschliessend gehe ich mal davon aus, dass NagVis bereits funktionsfähig vorinstalliert ist.
Die Original-Anleitung zum derzeit aktuellen Trunk findet man unter http://teamforge.net/viewvc/viewvc.cgi/sitebar/trunk/doc/install.txt?view=markup
Die Installation ist sehr einfach. Man entpackt die heruntergeladene Datei in ein Verzeichnis seiner Wahl, verschiebt die Verzeichnisstruktur ggf. noch an einen Ort der für den WebServer erreichbar ist. Natürlich sollte ggf. die WebServer-Konfiguration und Berechtigung der Verzeichnis-/Datei-Struktur vom entpackten/verschobenen SiteBar entsprechend angepasst/erweitert werden.
Die Basis-Konfiguration erfolgt über ein Web-GUI (Beispiel):
http://localhost/sitebar/index.php
![]() |
1. Create Database
2. Check Settings
3. Write to file
![]() |
4. Install
![]() |
5. Einrichten
![]() |
6. Daten eingeben
7. Bestätigen
![]() |
8. zurück
![]() |
9. Benutzereinstellungen
![]() |
10. Erweiterte Einstellungen zeigen
Als Standard URL kann man zum Beispiel „http://localhost/nagvis/frontend/nagvis-js/index.php?mod=Map&act=view&show=“ eintragen.
Weiterhin könnte man den Expert-Modus aktivieren (hier nicht dargestellt)
![]() |
Bei Bedarf weitere Angaben bearbeiten…
![]() |
11. Bestätigen
hier könnte eine Fehlermeldung kommen → ggf. Ausloggen → Einloggen als neu angelegter User „sitebaradm“ → Ab Schritt 9. wiederholen
![]() |
12. Bäume verwalten
![]() |
13. Baum erstellen
![]() |
14. Bestätigen
![]() |
15. Baum auswählen → Public Bookmarks
16. Baum löschen
17. Baum auswählen → Admin Boolmarks
18. Baum löschen
![]() |
19. Bestätigen
![]() |
20. zurück
![]() |
21. Gruppen verwalten
![]() |
22. Gruppe erstellen
![]() |
23. Bestätigen
24. Im nächsten Fenster/Dialog auf „zurück“ um ins Hauptmenü zu gelangen und dort ausloggen.
A. Die Datei „default.header_over.png“ aus dem NagVis-Verzeichnis ins SiteBar-Verzeichnis kopieren (nur für die Optik)
B. Als nächstes erstellt man die Seite mit dem integrierten Menü im SiteBar-Verzeichnis „emb.php“:
<?php $oldDir = getcwd(); // SiteBar PHP files must be available on this server, // we change temporarily to the installation directory. // chdir("sitebar"); chdir("/var/www/sitebar"); // Inject direct and indirect classes // require_once('./inc/writers/sitebar_emb.inc.php'); require_once('/var/www/sitebar/inc/writers/sitebar_emb.inc.php'); // Create the writer object. $writer = new SB_Writer_sitebar_emb(); // Do we want another skin? SB_Skin::set("SiteBarXP"); // We change both the absolute and the relative URL, // we may run on a different subdomain or use an alias. SB_Page::absBaseUrl('http://localhost/sitebar/'); SB_Page::relBaseUrl('http://localhost/sitebar/'); // Restore pwd, if you want to load some other files chdir($oldDir); ?> <body style="margin:0px 0px 0px 0px;"> <img src="./default.header_over.png" style="width:240px;height:31px;margin:0px 0px 10px 0px"> <link rel="StyleSheet" href="<?php echo SB_Skin::src('sitebar.css')?>" type="text/css" media="all"> <script type="text/javascript" src="<?php echo SB_Page::absBaseUrl() ?>js/sitebar.js"> </script> <div style="display:none;"> <?php $writer->drawJavaScriptData(); ?> </div> <div class="siteBar siteBarBaseFont siteBarPageBackground"> <?php // Direct login by using the sitebaruser with his password // $writer->um->login('user','password'); $writer->um->login('sitebaradm','sitebaradm'); $writer->run(); ?>
C. Anschliessend wird das Frame erstellt „index.htm“
<HTML>
<HEAD>
<FRAMESET cols="240,*" border=1>
<FRAME src="http://localhost/sitebar/emb.php" name="navi">
<FRAME src="http://localhost/nagvis/index.php" name="main">
</FRAMESET>
</HEAD>
</HTML>
D. Für ein wenig mehr Komfort kann man noch die Datei „sitebar/command.php“ anpassen:
Hier passt man die „function commandAddBookmark“ an indem man die Variable „$ziel“ hinzufügt…
... function commandAddBookmark() { $nid = SB_reqValInt('nid_acl',true); $node = $this->tree->getNode($nid); if (!$node) return; if (SB_reqChk('bookmarklet')) { if (strlen(SB_reqVal('newfolder'))>0) { $newnode = $this->tree->addNode($nid, SB_reqVal('newfolder')); if ($this->hasErrors()) { return; } $nid = $newnode; } } // Get values entered by the user $url = SB_reqVal('url'); $favicon = SB_reqVal('favicon'); $name = SB_reqVal('name'); $is_feed = SB_reqVal('is_feed');
Hier die erste Anpassung → Einfügen der folgenden Zeile:
$ziel = 'main';
Weiter geht es mit…
// If we have bookmarklet we have already received the icon
if (!SB_reqChk('bookmarklet') && !$favicon && $this->um->getParam('user','auto_retrieve_favicon'))
{
$this->ignoreWarnings();
require_once('./inc/pageparser.inc.php');
$page = new SB_PageParser( $url, array('FAVURL'));
$page->getInformation(array('FAVURL'));
$this->ignoreWarnings(false);
if (!$page->isDead && $page->errorCode['FAVURL']<PP_ERR)
{
$favicon = $page->info['FAVURL'];
$favurl = 'favicon.php?' . md5($favicon) . '=' . SB_reqValInt('lid_acl');
$this->message = SB_T('Favicon <img src="%s"> found at url %s.', array($favurl, $url));
}
else
{
$this->message = SB_T('Favicon not found!');
}
}
$insert = array
(
'name'=>$name,
'url'=>$url,
'favicon'=>$favicon,
Und hier die zweite Anpassung → Auskommentieren der vorhandenen Zeile und die darunter hinzufügen:
// 'target'=>SB_reqVal('link_target'), 'target'=>$ziel,
Daraufhin folgt …
'private'=>SB_reqVal('private')?1:0, 'is_feed'=>SB_reqVal('is_feed')?1:0, 'comment'=>SB_reqVal('comment'), 'validate'=>SB_reqVal('novalidate')?0:1, ); ...
Auf diese Weise wird voreingestellt, dass der Link-Target im Bereich „main“ des Frames „index.htm“ aufgerufen wird (Die URL/Map also im rechten Fenster dargestellt wird). Wenn man diese Anpassung nicht durchführt muss man die entsprechende Angabe jedes mal über die erweiterten Einstellung beim anlegen eines neuen Bookmarks vornehmen.
Weiterhin sollte man den Source-Code noch dahingehend anpassen, dass nach dem anlegen eines neuen Bookmarks automatisch ein redirect zur „Basis-Menü-Ansicht“ (nur Baumstruktur) erfolgt statt zum Administrations-Menü. Dazu sucht man in der „command.php“ nach folgendem Eintrag:
... SB_redirect('index.php'.$cw->getParams(false)); ...
Dieser Eintrag wird auskommentiert und ersetzt oder so angepasst, dass ein Redirect zur redir.htm erfolgt - Beispiel:
... // SB_redirect('index.php'.$cw->getParams(false)); SB_redirect('redir.htm'.$cw->getParams(false)); ...
Jetzt muss natürlich noch die Datei redir.htm im Sitebar-Verzeichnis erstellt werden (dort wo auch die command.php liegt).
<HTML> <HEAD> <meta http-equiv="refresh" content="1;url=http://localhost/sitebar/emb.php"> </HEAD> <BODY> ... redirect ... </BODY> </HTML>
Damit landet man nun auch nach dem Bearbeiten der Baumstruktur in der „korrekten“ Ansicht des Menüs.
Abschliessend ruft man den Link „http://localhost/sitebar/index.htm“ auf und per rechten Mausklick auf das Menü-Icon kann man den ersten Eintrag hinzufügen.