Open Energy Monitor: Unterschied zwischen den Versionen

Aus Technik-fan.de Wiki
Wechseln zu: Navigation, Suche
(Erweitern der Ethernet Library)
(Software auf dem Server)
Zeile 21: Zeile 21:
 
  mv openenergymonitor-emoncms3 emon
 
  mv openenergymonitor-emoncms3 emon
  
Die Visualisierung der Daten übernimmt das PHP Script emoncms. Damit das Script auf dem Apache2 Webserver läuft müssen einige Optionen gesetzt werden. Hier ist eine eigene Subdomain zu empfehlen:
+
Die Visualisierung der Daten übernimmt das PHP Script emoncms. Damit das Script auf dem Apache2 Webserver läuft muss die Option AllowOverride All gesetzt werden.
  
<source lang=bash>
+
vim /etc/apache2/sites-enabled/000-default
<VirtualHost *:80>
+
        ServerName emon.yourserver.de
+
        ServerAlias emon
+
        ServerAdmin your@mail.de
+
  
         DocumentRoot /var/www/emon
+
         <Directory /var/www/nossl/wiki>
        <Directory />
+
                 Options Indexes FollowSymLinks MultiViews
                 Options FollowSymLinks
+
 
                 AllowOverride None
 
                 AllowOverride None
        </Directory>
 
        <Directory /var/www/emon>
 
                Options Indexes FollowSymLinks MultiViews
 
                '''AllowOverride All'''
 
 
                 Order allow,deny
 
                 Order allow,deny
 
                 allow from all
 
                 allow from all
 
         </Directory>
 
         </Directory>
  
        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
+
muss geändert werden zu
        <Directory "/usr/lib/cgi-bin">
+
                AllowOverride None
+
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
+
                Order allow,deny
+
                Allow from all
+
        </Directory>
+
  
        ErrorLog /var/log/apache2/emon-error.log
 
  
        # Possible values include: debug, info, notice, warn, error, crit,
+
vim /etc/apache2/sites-enabled/000-default
        # alert, emerg.
+
        LogLevel warn
+
  
         CustomLog /var/log/apache2/emon-access.log combined
+
         <Directory /var/www/nossl/wiki>
 
+
                Options Indexes FollowSymLinks MultiViews
    Alias /doc/ "/usr/share/doc/"
+
                AllowOverride All
    <Directory "/usr/share/doc/">
+
                Order allow,deny
        Options Indexes MultiViews FollowSymLinks
+
                allow from all
        AllowOverride None
+
         </Directory>
        Order deny,allow
+
        Deny from all
+
         Allow from 127.0.0.0/255.0.0.0 ::1/128
+
    </Directory>
+
  
</VirtualHost>
 
</source>
 
 
Nach einem Neustart des Apache Webservers ist die Seite erreichbar:
 
Nach einem Neustart des Apache Webservers ist die Seite erreichbar:
 
  /etc/init.d/apache2 restart
 
  /etc/init.d/apache2 restart

Version vom 14. Januar 2012, 12:54 Uhr

Arduino Sketch

Erweitern der Ethernet Library

Um DHCP und DNS nutzen zu können muss eine modifizierte Ethernet Library installiert werden. Die Library muss in das Verzeichnis "libraries" in den Arduino Ordner. Ich habe diese Library verwendet:

http://www.mcqn.com/weblog/dhcp_and_dns_arduino

Danach bekommt das Board automatisch eine IP vom Router zugewiesen. Zudem kann der Arduino DNS Namen in IP Adressen auflösen.

Software auf dem Server

Download der *.zip Archive:

https://github.com/openenergymonitor/emoncms3

Entpacken auf dem Server:

cd /var/www/emon
unp openenergymonitor-emoncms3-44264cd.tar.gz
mv openenergymonitor-emoncms3 emon

Die Visualisierung der Daten übernimmt das PHP Script emoncms. Damit das Script auf dem Apache2 Webserver läuft muss die Option AllowOverride All gesetzt werden.

vim /etc/apache2/sites-enabled/000-default
       <Directory /var/www/nossl/wiki>
               Options Indexes FollowSymLinks MultiViews
               AllowOverride None
               Order allow,deny
               allow from all
       </Directory>

muss geändert werden zu


vim /etc/apache2/sites-enabled/000-default
       <Directory /var/www/nossl/wiki>
               Options Indexes FollowSymLinks MultiViews
               AllowOverride All
               Order allow,deny
               allow from all
       </Directory>

Nach einem Neustart des Apache Webservers ist die Seite erreichbar:

/etc/init.d/apache2 restart

Danach muss eine Datenbank für emoncms in phpmyadmin angelegt werden. Es ist zu beachten das der Zugriff von jeder IP-Adresse möglich ist, damit der Arduino auch in die SQL Datenbank schreiben darf. Eine Anleitung zur Installation ist hier zu finden:

http://openenergymonitor.org/emon/node/150

User Registrierung abschalten

Um zu verhindern das sich fremde Leute in emoncms einloggen kann man den Button registrieren verstecken. Dazu muss folgende Datei verändert werden:

vim /var/www/emon/Views/user/login_block.php

Diese Zeile suchen:

<input type="submit" class="button04" value="Login" onclick="javascript: form.action='<?php echo $GLOBALS['path']; ?>user/login';" /> or <input ype="submit" class="button04" value="Register" onclick="javascript: form.action='<?php echo $GLOBALS['path']; ?>user/create';" />

und mit dieser Zeile ersetzen:

<input type="submit" class="button04" value="Login" onclick="javascript: form.action='<?php echo $GLOBALS['path']; ?>user/login';" />