Hallo,
gibt es eine möglichkeit das man dem vserver sagen kann das er eine bestimmte seite ca. alle 10 min. aktualiesiert?
es soll kein user / gast auf der webseite sein um dieses auszulösen.
ich hoff ich konnte mir gut ausdrücken was ich genau meine.
bedank mich schonmal im vorraus für eure antworten
lg
PHP / Vserver => autorefresh
- beckstar
- Erledigt
-
-
Was Du suchst, nennt sich Cronjob[1].
http://www.debian-administration.org/articles/56[1] http://de.wikipedia.org/wiki/Cronjob
Das Zusammen mit dem Programm wget.
-
hallo
schonmal vielen vielen dank für deine antwort.
ich hab das ganze mit einer datei gestestet. sprich der cromjob sieht so aus
Zitat
*/1 * * * * /usr/bin/php /var/www/virtual/MYDOMAIN/htdocs/test.php
jetzt zu mein problem
ich hab ein script geschrieben. funktioniert auf MVC basis
ich möchte jetzt dieses als conjob ausführenZitat*/1 * * * * /usr/bin/php /var/www/virtual/MYDOMAIN/htdocs/server/update/2/
sprich er soll den server -> updaten -> mit der mysql feld id nr -> "2"
aber leider macht er dieses nicht
weiss jemand rat? -
Hast du das packet "php5-cli" installiert (apt-get install php5-cli) ? Ansonten wird es dir nicht möglich sein das script via Cronjob auf der Shell auszuführen, zumindest nicht so wie du es versuchst.
Zitat*/1 * * * * /usr/bin/php /var/www/virtual/MYDOMAIN/htdocs/server/update/2/
Sag dem Cronjob mal was er genau ausführen soll
*/1 * * * * /usr/bin/php -p /var/www/virtual/MYDOMAIN/htdocs/DAS_SCRIPT?func=update&id=2
oder wie auch immer das in deinem script variabl konfiguriert ist, von deiner Beschreibung her macht es zumindest so den eindruck, (schwer zu sagenohne das script zu sehen.)
da /var/www/virtual/MYDOMAIN/htdocs/server/update/2/ nur Ordnerangaben sind und keine Script parameter.
(Notiz and mich >> Ich sollte post vorn dem Posten genauer lesen >> erspart edits) -
ja "php5-cli" ist installiert.
das mvc hat ja ein routing system sprich früher über switch würde es so aussehen
MYDOMAIN.de/server.php?action=update&serverid=2
mit dem mvc was ich geschrieben habe sieht es so aus
MYDOMAIN.de/server/update/2/
ist dieses überhaupt möglich ein cronjob drauf anzusetzten? -
Probier mal:
Zitat*/1 * * * * /usr/bin/php -p /var/www/virtual/MYDOMAIN/htdocs/server.php?action=update&serverid=2
Vorausgesetz das script liegt da.
-
geht leider nicht zum einen liegt es daran
/htdocs/server.php?action=update&serverid=2 <--
diesen link gibt es nicht da ich MVC http://de.wikipedia.org/wiki/Model_View_Controller
benutze. bei mvc sieht der link dann so aus
htdocs/server/update/2/
ne andere frage. wenn ich eine index.php aufrufe über conjob laded er dann auch die includes datein mit? -
Ja macht er.
-
versteht das nicht
mein cronjob sieht so ausZitat
*/1 * * * * /usr/bin/php -p /var/www/virtual/db88.dyndns.org/htdocs/tsview/index.php
*/1 * * * * /usr/bin/php /var/www/virtual/db88.dyndns.org/htdocs/test.php
die test.php führt er aus
die index.php nicht
bei beiden hab ich ein mysql update drinnen... in der index.php soll er jede 3 min checken was neu am server geschehen ist...
leider geht dieses nicht -
Funktioniert die index.php wenn du sie manuell aufrufst ?
(*/3 = alle 3 minuten)
-
jep sofort
kleiner hinweis ich hab es so geschrieben
mysql eintrag server ----> editdateline --> älter als 3 min. ---> update ausführen
das sollte dann der cronjob machen und nicht je webseiten user -
Ich habe zwei Fragen:
1) Ist es wirklich nötig, dass du das Script direkt aufrufst? Was musst das Skript machen? Kann man das nicht mit einem Externen Script erledigen? Oder einem Skript, das darauf angepasst ist, dass man es über das CLI aufruft?
2) Wenn du das Skript unbedingt über http aufrufen musst kannst du es mal mit wget oder curl versuchen.
wget http://meinedomain.de/meinscript.php?param=foo¶m2=bar
-
hi danke mit wget geht es... aber wie kann ich wget sagen das es mir keine webseite speichert.
auf meinen vserver erstellt er im ordner root immer die geladene datei rein... gibt es ein befehl dazu dieses zu verbieten? -
-O /dev/null
sollte es sein. Das "O" groß! -o behandelt das Log. -
komisch.
jetzt erstellt er keine log mehr. aber macht aber auch keinen datenbank update mehr
mein cronjob
Zitat*/1 * * * * wget -O http://DOMAIN.de/tsview/wget >/dev/null
ist was falsch? -
-O benötigt den parameter direkt.
wget -O /dev/null http://domain.de/tsview/wget >> /dev/null
sollte klappen. Doppelt hält besser. -
super :):) klappt!!!!
top foren user hier
danke danke