hallo,
ich habe eine frage. ichbräuchte für ein projekt ein progi welches durch CRON gestartet wrid und mir eine DB durchsucht und die infos die es findet in eine Datei speichert mit ROOT rechten. so, nachdem das ganze offline arbeitet und nicht über ein webinterface ansteuerbar ist, ist die frage in welcher sprache es einfacher ist, da ich von beiden noch keine ahnung habe und mich dann hineinstürtzen werde in welche sprache auch immer. hoffe ihr könnt mir helfen, soll ich es jetzt in Perl oder C (++) machen, bzw. welche alternativen gebe es noch ? es ist ein Linux Server und muss als root ausgeführt werden.
dankke
Troublegum
14-07-2002, 11:19
Ich würde sagen, nimm Perl.
Du kannst per DBI Modul auf Datenbanken zugreifen und sie durchsuchen.
Why not PHP?
Natürlich nur wenn Du ein LAMP laufen lassen kannst. Is ja wurscht, ob der Webserver von außen nicht erreichbar ist.
Datenbank MySQL wie gewohnt.
Um PHP Skripte über cron (batch) auszuführen, im Falle das PHP als Apache Modul konfiguriert ist, also keine PHP Executive (CGI) zu Verfügung steht kann man "wget" verwenden.
Ein Browser ist demnach nicht erforderlich.
wget http://localhost:80/dir/durchzufuehrendes.php
Mehr über wget:
http://bs.hhi.de/service/doc/WWW/wget/wget.html
Es gibt auch noch andere Utilities mit denen das möglich ist, beispielsweise mit lynx.
War nur eine Idee.
Diesbezüglich gibt es einige Threads. Such mal nach den Suchbegriffen wget, lynx, cron oder crontab
also danke erstmals.
das problem bei PHP ist es, ja es handelt sich um einen lamp server, allerdings befidnet sich auf dem server ein apache das für mehre user zugänglihc (webspace). somit kannich es nicht root starten da sonst zuviel passieren kann - Sicherheitslücke.
somit müsste ich für das eine script einen zusätzlichenb webserver aufsetzen, oder !?! ich meine noch einen apache das wirdglaube ich nciht gehen. somit ist PHP hinfällig, oder sehe ich das falsch.
?
es geht definitiv um datein die man nur als root öffnen und ädnern kann und die rechte dieser datein dürfen unter keinen umständen geändert werden.
Wenn Du PHP als CGI installierst und dadurch ein PHP Executable hast, dann kannst Du das auch.
Hast Du zufällig eine WAMP Installation? Falls ja: Dort befindet sich auf die C:\phpinstallationsdir\sapi\php.exe.
Wenn Du diese Exe via Commandline aufrufst, kannst Du als Parameter ein PHP-Skript mitgeben:
>php phpinfo.php
und schon wird es exekutiert.
Was will man mehr?
http://www.php.net/manual/de/install.commandline.php
ja geht das denn das ich php als cgi und als modul verwende ?
es handelt sic h aju um keinen WAMP sondern LAMP !
LAMP: Yes it is possible, but you need to compile PHP in CGI mode. Check out the manual on how to do this.
Compiling PHP as a CGI binary does not have any effect on your apache module version. Both can exist at the same time.
WAMP war nur ein Beispiel, denn dort gibt es immer ein Binary, da die WAMP Apache Modul Version nur simuliert wird, tatsächlich aber auf PHP CGI aufbaut. Also quasi ein Möchtegernmodul.
all right, thx hand have a nice day