Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [inne] CRON - z czym to się je?
Niree
post 22.12.2016, 14:04:59
Post #1





Grupa: Zarejestrowani
Postów: 220
Pomógł: 18
Dołączył: 5.02.2016
Skąd: Polska

Ostrzeżenie: (0%)
-----


Cześć. Postanowiłem dziś wykonać skrypt podpinając pod to darmową bramkę SMS.

1. Stworzyłem skrypt .php
2. Władowałem hasło roota do programu "puffy" i... i na tym koniec.

Czarna magia. Mam proste pytanie, jak wykonać CRON np. z folderu (zaraz po html_public) /skrypt/cron.php co minutę (konkretna komenda, krok po kroku), oraz ewentualne logi z tego skryptu?
W skrypcie mam kilka razy "echo" i chciałbym te echo zobaczyć w logach, co konkretnie wyskakuje.

Zainstalowałem program PuFFy, jeżeli natomiast polecacie inny program - proszę uprzejmie o nazwę.

Pozdrawiam :-)

Ten post edytował Niree 22.12.2016, 14:05:27
Go to the top of the page
+Quote Post
Turson
post 22.12.2016, 14:07:24
Post #2





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


Kod
crontab -e

dopisz częstotliwość i skrypt do wykonania
done
Go to the top of the page
+Quote Post
Niree
post 22.12.2016, 14:10:33
Post #3





Grupa: Zarejestrowani
Postów: 220
Pomógł: 18
Dołączył: 5.02.2016
Skąd: Polska

Ostrzeżenie: (0%)
-----


Dopisałem na końcu:

  1. */1 * * * * echo "test"


I chciałbym teraz logi z tego? Jaką komendą to uzyskam?
Go to the top of the page
+Quote Post
Turson
post 22.12.2016, 14:15:32
Post #4





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


nie
Kod
echo "test"
a tam ma być bashowe polecenie. Typu:
Kod
    */1 * * * * /usr/bin/php sciezka/do/skryptu.php

/usr/bin/php to interpeter php
loguj to sobie w innym pliku i podejrzyj
Go to the top of the page
+Quote Post
Niree
post 22.12.2016, 14:55:25
Post #5





Grupa: Zarejestrowani
Postów: 220
Pomógł: 18
Dołączył: 5.02.2016
Skąd: Polska

Ostrzeżenie: (0%)
-----


Sciezka do skryptu po zalogowaniu do FTP: /panel/cron(folder bedzie mial inna nazwe)/cron.php, w /panel/ jest np. index.php i cała strona.
Co oznacza sciezka do skryptu w Twoim poście? Taką ścieżkę jak w FTP?

Ścieżka ze zmiennej $_SERVER['SCRIPT_FILENAME'] = /var/www/panel/cron/cron.php

Ten post edytował Niree 22.12.2016, 14:30:59
Go to the top of the page
+Quote Post
Turson
post 22.12.2016, 15:01:02
Post #6





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

Ostrzeżenie: (0%)
-----


Podaj ją właśnie
Go to the top of the page
+Quote Post
Niree
post 22.12.2016, 15:15:50
Post #7





Grupa: Zarejestrowani
Postów: 220
Pomógł: 18
Dołączył: 5.02.2016
Skąd: Polska

Ostrzeżenie: (0%)
-----


Niestety, nie działa.

Dałem w cron.php:
  1. zapytanie("UPDATE `driver_sms` SET `date` = 'CRON DZIALA' WHERE `id` = '1'", $dbh1)or die(mysql_error());


I jak możesz się domyślać, skrypt sie nie wykonuje. (uprzedzając, tak, 'date' jest ustawione jako text, testowo dalem tylko byle jaką kolumne).

Natomiast zapytanie się wykonuje po wejściu na bezposredni adres skryptu.

Ten post edytował Niree 22.12.2016, 15:16:21
Go to the top of the page
+Quote Post
viking
post 22.12.2016, 15:25:20
Post #8





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


Uruchom ten skrypt z wiersza poleceń php ścieżka. Jak zadziała to przeklej do crona.


--------------------
Go to the top of the page
+Quote Post
Niree
post 22.12.2016, 16:00:13
Post #9





Grupa: Zarejestrowani
Postów: 220
Pomógł: 18
Dołączył: 5.02.2016
Skąd: Polska

Ostrzeżenie: (0%)
-----


Okej, odpalilem konsolą php, teraz problem. Konsola wywaliła:


  1. PHP Warning: include(../s/config.php): failed to open stream: No such file or directory in /var/www/panel/cron/cron.php on line 3
  2. PHP Warning: include(): Failed opening '../s/config.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/panel/cron/cron.php on line 3
  3. PHP Warning: include(../s/connect.php): failed to open stream: No such file or directory in /var/www/panel/cron/cron.php on line 4
  4. PHP Warning: include(): Failed opening '../s/connect.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/panel/cron/cron.php on line 4
  5. PHP Fatal error: Call to undefined function zapytanie() in /var/www/panel/cron/cron.php on line 6



Co istotne, po /panel/ mam jeszcze /s/ w którym mam pliki config oraz connect, które łączą z bazą, tam mam hasło do bazy itp. Jest również zdefiniowana funkcja (zapytanie()).
Co zrobić w tym przypadku? W cron.php mam include('../s/config.php');, a konsola tak jakby nie widzi tego pliku.

Ten post edytował Niree 22.12.2016, 16:00:57
Go to the top of the page
+Quote Post
Puszy
post 22.12.2016, 16:01:53
Post #10





Grupa: Zarejestrowani
Postów: 279
Pomógł: 42
Dołączył: 10.10.2011

Ostrzeżenie: (0%)
-----


To ja się podepnę do tematu. Czy to normalne że CRON ma opóźnienia z wprowadzaniem zmian? Przeładowanie następuje dopiero po zakończeniu procesów wywołanych przez CRONa i to nie zawsze, czasami muszę czekać nawet 2-4 godziny żeby załadowały się nowo wprowadzone ustawienia.
Go to the top of the page
+Quote Post
nospor
post 22.12.2016, 16:12:15
Post #11





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




@Niree zawsze ale to zawsze uzywac sciezek bezwzglednych to nie bedziesz mial takich problemow
Najlepiej jest pobrac sciezkie pliku glownego (__DIR__) i do niej doczepiac kolejne partie sciezek do poszczegolnych rzeczy.

sciezki wzgledne nie sa liczone od miejsca skryptu, ale od miejsca odpalenia skryptu wink.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Niree
post 22.12.2016, 16:49:43
Post #12





Grupa: Zarejestrowani
Postów: 220
Pomógł: 18
Dołączył: 5.02.2016
Skąd: Polska

Ostrzeżenie: (0%)
-----


Dzięki @nospor, w końcu wyrzuciło coś sensownego:


  1. 1. Brak rekordów 5. Brak rekordów 9. Brak rekordów 10. Brak rekordów 11. Brak rekordów 6. Brak rekordów 7. Brak rekordów 8. BRAK REKORDOW


Teraz uruchomię CRON i sprawdzimy.

Alleluja :-)
Działa. Dzięki wielkie za pomoc. Nie wiedziałem jak to ugryźć, zawsze to jakieś nowe doświadczenie.

@Turson, @viking niezawodni ;-)
@nospor pomoc nieoceniona haha ;-)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 29.03.2024 - 00:09