Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> ponownie CRON lecz w nieco innym wydaniu
dancone
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 30.09.2003
Skąd: gorzów wlkp.

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


Większość pytań dotyczy zazwyczaj zastąpienia cron'a skryptem. Nie znalazłem jednak rozwiązania tematu zbliżonego.
Mianowicie:

Admin serwera generuje cron najczęściej o każdej pełnej godzinie i zaleca umieszczenie w katalogu głównym (klienta) plik:
cron-hourly.php (odczyt cron co godzinę)
cron-daily.php (odczyt cron co dzień)
etc...
naturalnie cron odczytuje z interpreterem php, pl, py, cgi w zależności od rozszerzenia pliku w katalogu głównym.

Na czym polega nasz problem?
1. Posiadamy skrypt w jakimś katalogu, np. ./kiosk/plik.php który może być uruchomiony jedynie w katalogu ./kiosk.
W pliku cron-hourly.php zapisanym w głównym katalogu powinniśmy umieścić cały skrypt jednak nie możemy ze względu na:

- poprawność działania tego skryptu
- bezpieczeństwo danych
(ze strony praktycznej)
- ograniczenie rozmiaru cron-hourly.php (Pamiętajmy, że plików takich jak plik.php jest kilka na serwerze w innych katalogach.

2. Plik ./kiosk/plik.php potrzebujemy odświeżać (powiedzmy) co 10 min.

W prawdzie mam jakąś wizję ale... z nadmiaru pomysłów zabrnąłem w pusty zaułek.
Zapewne ktoś wymyślił lub wymyśli coś innego a przy tym w tym forum temat CRON zostanie "doszczętnie" wyczerpany.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
adwol
post
Post #2





Grupa: Zarejestrowani
Postów: 691
Pomógł: 0
Dołączył: 6.08.2003

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


Cytat
naturalnie cron odczytuje z interpreterem php, pl, py, cgi w zależności od rozszerzenia pliku w katalogu głównym.

Nie. Jeśli skrypt ma poprawnie sformatowaną pierwszą linię:
Kod
#!/sciezka/do/interpretera

i ustawiony bit uruchamiania w prawach dostępu to cron po prostu uruchamia ten plik. Resztą zajmuje się system.
Cytat
1. Posiadamy skrypt w jakimś katalogu, np. ./kiosk/plik.php który może być uruchomiony jedynie w katalogu ./kiosk.

Zawsze możemy w cron-hourly.php umieścić:
[php:1:73aab1581b]<?php
chdir('kiosk');
exec('./plik.php');
?>[/php:1:73aab1581b]
Cytat
W pliku cron-hourly.php zapisanym w głównym katalogu powinniśmy umieścić cały skrypt jednak nie możemy ze względu na:

- poprawność działania tego skryptu
- bezpieczeństwo danych
(ze strony praktycznej)
- ograniczenie rozmiaru cron-hourly.php (Pamiętajmy, że plików takich jak plik.php jest kilka na serwerze w innych katalogach.

Mógłbyś przybliżyć dlaczego nie możemy bo jakoś nie widzę tu żadnych ograniczeń.
Cytat
2. Plik ./kiosk/plik.php potrzebujemy odświeżać (powiedzmy) co 10 min.

Rozwiązanie może brutalne i nie zawsze skuteczne ale jeśli admin nie pozwala na korzystanie z crona częściej niż raz na godzinę:
[php:1:73aab1581b]<?php
chdir('kiosk');
for ($i = 0; $i < 6; $i++)
{
exec('./plik.php');
sleep(600);
}
?>[/php:1:73aab1581b]
Można też użyć programu at.
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 24.08.2025 - 12:00