cronjob-alternative für crawler wurde Beantwortet

Autor Nachricht
Verfasst am: 17.05.2008 [12:36]
Eros


[Themenersteller]
dabei seit: 20.05.2006
Beiträge: 131

Hallo,

leider habe ich keinen shell-zugang und die cronjobs von allinkl erlauben nur das Ausführen von php-scripts.

Ist es trotzdem möglich, den crawler irgendwie automatisch anschubsen zu lassen? Durch ein php-script vielleicht?

Dankeschön

Ich bin ein Brathering. Bist Du meine Mama?
Verfasst am: 18.05.2008 [13:40]
typo3tester

dabei seit: 01.11.2004
Beiträge: 191

Hi eros,

Du kannst ja grundsätzlich in einer PHP-Datei einen Befehl exec(meinbefehl) ausführen.
meinbefehl wäre dann das gleiche, was Du an der Shell ausführen kannst.

In meinem Fall würde in der PHP-Datei stehen:

exec ("/usr/local/bin/php /is/htdocs/wp1094014_RN1B2BONXL/www/berggenussde/httpdocs/typo3conf/ext/crawler/cli/crawler_cli.phpsh");

Und die kannst Du ja via Cron ausführen, wenn ich Dich richtig verstehe.

Näheres zu exec siehe hier:
de.php.net/manual/de/function.exec.php

Gruß, Regina
Verfasst am: 18.05.2008 [14:20]
Eros


[Themenersteller]
dabei seit: 20.05.2006
Beiträge: 131

Hallo Regina,

Du kannst ja grundsätzlich in einer PHP-Datei einen Befehl exec(meinbefehl) ausführen.
meinbefehl wäre dann das gleiche, was Du an der Shell ausführen kannst.


Das weiß ich schon. Und das ganze mit passthru durchexerziert bringt folgendes:

Warning: require(/usr/bin/conf.php): failed to open stream: No such file or directory in /www/htdocs/w006a0d5/xxxxx/typo3conf/ext/crawler/cli/crawler_cli.phpsh on line 32 Fatal error: require(): Failed opening required '/usr/bin/conf.php' (include_path='.:/usr/share/php:..') in /www/htdocs/w006a0d5/xxxxx/typo3conf/ext/crawler/cli/crawler_cli.phpsh on line 32


Und das sagt mir, dass das irgendwie mit den Pfaden nicht hinhaut, weil z. b. conf.php nicht in /usr/bin/ sondern in /www/htdocs/w006a0d5/xxxxx/typo3conf/ext/crawler/cli/ ist.

Grüße

Ich bin ein Brathering. Bist Du meine Mama?
Verfasst am: 18.05.2008 [14:33]
typo3tester

dabei seit: 01.11.2004
Beiträge: 191

Dann stimmt das hier noch nicht:
--------Datei crawler_cli.php Zeile 14ff-----------------
Php:Zeilennummerierung:  An / Aus

  1. $curf = '<hier_muss_Dein_Pfad_stehen';
  2. define('PATH_thisScript',$curf);
  3. // Include configuration file:
  4. require(dirname(PATH_thisScript).'/conf.php');


Die Konstante PATH_thisScript ist bei Dir noch falsch gesetzt.
Die wird mit der Variable $curf befüllt werden.
Und die Variable $curf mußt Du mit dem Pfad auf die Datei crawler_cli.phpsh definieren.

In meinem Fall ist das auf meinem Windows-Testrechner:
E:\\wwwroot\\<pfad_auf_mein_typo>\\typo3conf\\ext\\crawler\\cli\\crawler_cli.phpsh

Bei Dir muß halt der entsprechende vollständige physikalische Pfad für Dein Linux-System rein.

Gruß, Regina

Verfasst am: 18.05.2008 [15:29]
Eros


[Themenersteller]
dabei seit: 20.05.2006
Beiträge: 131

Danke erstmal für Deine Unterstützung!

Deine Lösung ist prinzipiell richtig und funktioniert. Man wird allerdings mit folgendem Hinweis konfrontiert:

DEPRICATED - instead, use typo3/cli_dispatch.php, follow instructions in there.


Das habe ich die ganze Zeit versucht, geklappt hat es allerdings bei mir bis jetzt nicht.

Laut Manual und diverser bezugnehmender Tutorials um Netz muß man hierfür einen BE-User _cli_crawler anlegen. Damit funktioniert es zumindest bei mir nicht! Mein User muß _cli_lowlevel heissen, dann klappt es!

Für alle, die es interessiert nochmal die Aufrufe aus php heraus:

Queue erstellen: (1x wöchentlich oder so)

Php:Zeilennummerierung:  An / Aus

  1. passthru ('/usr/bin/php /www/htdocs/xxxxx/typo3/cli_dispatch.phpsh crawler_im 1049 -d 99 -proc tx_indexedsearch_reindex -n 1000 -o queue');


Queue abarbeiten: (z. B.: alle 2 Minuten oder so)

Php:Zeilennummerierung:  An / Aus

  1. passthru ('/usr/bin/php /www/htdocs/xxxxx/typo3/cli_dispatch.phpsh crawler');


Grüßeli an Alle

Ich bin ein Brathering. Bist Du meine Mama?
Verfasst am: 18.05.2008 [15:41]
typo3tester

dabei seit: 01.11.2004
Beiträge: 191

Hi,

Aha, da hast Du wohl eine neuere Version als ich.
Ich habe den Crawler 1.1.0.
Dann kann ich da nicht wirklich mitreden bei Deinem Problem.

Gruß, Regina
Verfasst am: 12.06.2008 [16:40]
cschnell

dabei seit: 23.03.2006
Beiträge: 127

warum muss es eigentlich immer der Crawler sein?

Tut es ein wget -r nicht auch? das kann man dann ganz einfach als cronjob machen.




 
TYPO3 Version 4.2.0 testen

TYPO3 Ver. 4.2.0 testen

Testen Sie die neue TYPO3 Version 4.2.0 kostenlos für einen Monat

TYPO3 Bücher

TYPO3 Workshops


TYPO3 Einführungsschulung
in Berlin:
Montag, 07.07.
in Espelkamp:
Montag, 04.08.

TYPO3 Intensivschulung
in Espelkamp:
Mi., 06.08. - Fr., 08.08.
in Würzburg:
Mo., 18.08. - Mi., 20.08.
in Köln:
Mo., 01.09. - Mi., 03.09.
in Berlin:
Mi., 24.09. - Fr., 26.09.

TYPO3 Extensionschulung
in Berlin:
Mo., 14.07. - Mi., 16.07.
in Espelkamp:
Mo., 11.08. - Mi., 13.08.