login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Cronjob controle (Opgelost)

Offline ProjectWebdesign - 26/06/2010 13:14
Avatar van ProjectWebdesignLid Ik heb even een vraagje m.b.t. het controleren van de request naar een cronjob.
Het liefst wil ik mijn cronjob in de public_html hebben staan, omdat daar al mijn db connecties en alles al geconfigureerd zijn. Nu vroeg ik me af of het mogelijk was om daar gewoon een php bestand te maken wat beveiligd is voor het uitvoeren via een browser.
Iemand heeft eens een keer tegen mij gezegd dat je met 1 regel code kan kijken of de request naar het PHP bestand van een cronjob/commandline komt i.p.v. een browser.

Weet iemand hoe dit moet?

Bedankt

9 antwoorden

Gesponsorde links
Offline Martijn1989 - 26/06/2010 13:24
Avatar van Martijn1989 PHP ver gevorderde Je kan ook kijken wat het IP is dat de pagina opvraagt ;). Stel het ip van je server is 1.2.3.4 doe je:

  1. <?
  2. if($_SERVER['REMOTE_ADDR'] == '1.2.3.4') {
  3.  
  4. //Script hier
  5.  
  6. } else {
  7.  
  8. //Geen toegang
  9.  
  10. }
  11. ?>
Offline Martijn - 26/06/2010 13:59
Avatar van Martijn Crew PHP je zou verder browsercontrole kunnen maken. Die is inderdaad te omzeilen, maar als je nergens neerzet "browser verkeerd" zal het wel even duren voordat ze dat doorhebben
Offline ArieMedia - 26/06/2010 21:53
Avatar van ArieMedia Gouden medaille

PHP ver gevorderde
Citaat:
Het liefst wil ik mijn cronjob in de public_html hebben staan, omdat daar al mijn db connecties en alles al geconfigureerd zijn.


Als je de cronjob in cgi-bin zet en een require_once doet naar je database instellingen dan hoort het te werken.
Offline ProjectWebdesign - 27/06/2010 11:58
Avatar van ProjectWebdesign Lid Noujah wat het probleem is dat de database connectie niet zomaar één simpel bestand is. Het zit helemaal in mijn eigen framework ingevlochten, met complete database classes enzo.
Offline TotempaaltJ - 27/06/2010 12:03
Avatar van TotempaaltJ PHP interesse Ik meen te herinneren dat $_SERVER['REMOTE_ADDR'] te hacken is, dus dit is geen betrouwbare bron om te checken of de request van jouw server komt.
Offline ikkedikke - 27/06/2010 19:36 (laatste wijziging 27/06/2010 19:36)
Avatar van ikkedikke PHP expert Als je je bestanden direct aan de php-parser voert, kan je dit doen:

  1. <?php
  2. if(isset($_SERVER['REQUEST_METHOD'])) exit;
  3. ?>
Offline ProjectWebdesign - 27/06/2010 20:04
Avatar van ProjectWebdesign Lid Ik heb het even aan diegene gevraagd en die zei:
Citaat:
Je kunt het engine type opvragen.. dat is dan cgi of cli..
Offline Koen - 27/06/2010 21:21
Avatar van Koen PHP expert PHP.net: php_sapi_name
Bedankt door: ProjectWebdesign
Offline ProjectWebdesign - 28/06/2010 10:52 (laatste wijziging 28/06/2010 10:52)
Avatar van ProjectWebdesign Lid Bedankt Koen, dat is waar ik naar opzoek was 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.189s