produkcni server vs localhost

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
xr
Člen | 94
+
0
-

musim povedat, ze cim hlbsie „idem do“ nette, tym viac vidim, ze ho pisali fakt inteligentni ludia. to bola poklona autorom.

teraz otazka : ako nette zisti, ze som ho prave strcil na ostry server a preco sa nesprava ako na takom servri – do DB sa snazi dostat udaje ako na localhoste … v konfiguraku mam pritom nastavene ine heslo pre ostry a ine pre vyvojovy server.

EDIT: doplnujuce informacie:

dostavam error hlasku typu

Access denied for user 'root'@'195. ...' (using password: NO)

pritom v konfiguraku mam jasne uvedene heslo a meno ine nez root

Editoval xr (8. 8. 2010 0:05)

Lopata
Člen | 139
+
0
-

Kouzlo je v metodě detect

xr
Člen | 94
+
0
-
$conf= new Nette\Configurator();
Debug::dump($conf->detect('production'));
exit;

result: (na ostrom serveri)

bool(FALSE)

… ako inak to mam pouzit ?

xr
Člen | 94
+
0
-

ps: takisto mi zlyhava

Debug::dump(Environment::isProduction());

Editoval xr (8. 8. 2010 0:14)

Lopata
Člen | 139
+
0
-

Já sem to myslel informativně, abys věděl, jak na to Nette přijde. V praxi ale na tuto metodu vůbec nesahej. Ty pouze nastavuješ třídu Debug. Viz api . (Zaměř se na metodu enable)

xr
Člen | 94
+
0
-

to chapem, ze by som mohol vynut debugger a tym zamedzit zhliadnutiu citlivych dat. skor ma vsak zaujimaju tie data v konfiguraku. takto budem musiet ma dva – jeden pre vyvoj a jeden pre produkcny server.

xr
Člen | 94
+
0
-

skor mi, prosim, niekto poradte, ako zapnut produkcny rezim manualne, nakolko tie metody automaticke asi na tomto servri moc dobre nefunguju.

Lopata
Člen | 139
+
0
-

V souboru config.ini se nastavení dědí. To, co je společné pro vše je ve jmenném prostoru common. Z toho pak dědí prostor production, kde se přepíše to, co se liší. Od production zase dědí development. Viz skeleton.

Příklad

[common]
;databaze
db.name = mojedb
;jmeno databaze je vsude stejne
[production < common]
db.username = username
db.pass = s0meSuPerC00o|P4ss
; v production je heslo paranoidni
[development < common]
db.username = root
db.username = ""
; u sebe na lokalu mas jine nastaveni
xr
Člen | 94
+
0
-

xr wrote:

skor mi, prosim, niekto poradte, ako zapnut produkcny rezim manualne, nakolko tie metody automaticke asi na tomto servri moc dobre nefunguju.

tak uz som na to prisiel …

https://api.nette.org/…ronment.html#…

Environment::setMode('production');
Ped
Člen | 64
+
0
-

bolo by vsak zaujimave keby si prisiel na to preco automaticka detekcia zlyhala… ;) (ak mas cas na take veci)

cechjoe
Člen | 3
+
0
-

Ahoj vytvořil jsem na localhostu v nette jednoduchý statický web, ale při přesunu na server nejede a bohužel ani nevypisuje žádné chybové hlášky. pomocí echo jsem zjistil, že aplikace zamrzne někde v loadConfig() v metodě objectu Configurator loadConfig() u příkazu $locator->getService($name); . tento for cyklus by měl zpracovat několik služeb, ale v produkčním stavu zpracuje pouze dvě a skončí na Nette\Caching\ICacheStorage? Nesetkal jste se už někdo s něčím podobným – určitě to bude ptákovina, ale až taková, že jsem to nikde nevygooglil :-)
Díky moc !

Ondřej Mirtes
Člen | 1536
+
0
-

Pusť si Laděnku.

cechjoe
Člen | 3
+
0
-

Bohužel aplikace se zastaví v příkazu Enviroment::loadConfig(); ještě před spuštěním laděnky takže vidím jen prázdou stránku :-(

redhead
Člen | 1313
+
0
-

A co spuštění laděnky dát před to?? ;)

cechjoe
Člen | 3
+
0
-

Jsem říkal, že to bude blbost,ale díky :-) (pro další takové – špatně nastavená práva :-))