Nový configurator a chybná detekce isProductionMode() při cronu

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Tomáš Votruba
Moderator | 1114
+
0
-

EDIT: Vyřešeno upgradem Nette 2.0 z 2011–12–09 na 2012–01–04.


Jak uvádí info pro nový configurator vývojářský režim se detekuje jen pro IP adresu 127.0.0.1. Bohužel potkávám jiný stav.

S Nette se starším configuratorem mi naprosto stejné nastavení cronu (spouštěné stejným hostingem, stejnými podmínkami…) funguje bez problémů. Proto je brouk zřejmě v configuratoru novém.

Pro běžný chod stránek (url přístup) není problém, když zasáhne ale cron spouštěný hostingem, nastává problém chybné detekce produkčního módu. Zde jsou indicie:

public function actionCron() {
	var_dump($_SERVER["REMOTE_ADDR"]); // *...179
	var_dump($_SERVER["SERVER_ADDR"]); // *...179
	$productionMode = $this->context->parameters["productionMode"];
	var_dump($productionMode); // FALSE
	var_dump(Debugger::$productionMode); // FALSE
	// ...
}

Jak to řešit?
Napadá mne hodit do boostrapu jednoduchou detekci, ale nebylo špatné to fixnout nebo udělat správně (jestli něco přehlížím).

if($_SERVER["SERVER_NAME"] != "localhost") {
	$configurator->setProductionMode(TRUE);
}

Pro upřesnění: Nette Framework (version 2.0-dev released on 2011–12–09)
[Zkusím ještě použít aktuální verzi na Gitu, zda se problém nevyřeší.]

Editoval Schmutzka (5. 1. 2012 22:53)

Patrik Votoček
Člen | 2221
+
0
-

koukám do toho… ctu to po treti… a asi me neco uniká…

var_dump($_SERVER["REMOTE_ADDR"]); // *...179
var_dump($_SERVER["SERVER_ADDR"]); // *...179

// x.x.x.179 != 127.0.0.1 / ::1
hrach
Člen | 1838
+
0
-

Ocividne tvuj hosting nespousti scriprt crontabem,ale ten cron ti to vola wgetem,ne? Jak zadavas v administraci cron?predpokladam ze url…

Tomáš Votruba
Moderator | 1114
+
0
-

@Patrik Votoček: Právě tento aha efekt jsem musel taky překonat. Tyto hodnoty mi to opravdu psalo.

@hrach: Jj, url. Nicméně předtím mi stejný způsob na Nette 2.0 ze 2011–07–13 šel. Upgrade na současnou verzi to vyřešil, takže zřejmě dávno fixnutý bug.

Vyřešeno. Díky.

Editoval Schmutzka (5. 1. 2012 22:56)