rozeznani HTTP_HOST pres CLI

kleinpetr
Člen | 480
+
0
-

Zdravim,

narazil jsem na problem, rozeznavani http_host pri spousteni pres cli.

Mam podminku v bootstrap.php kde si podle http_host nactu prislusny config.

Resil jste nekdo ? Diky

kleinpetr
Člen | 480
+
0
-

Vyreseno pres $configurator->isDebugMode(); je sice blby, ze je tim padem vypnuta tracy, ale zatim postaci.

Kdybyste mel nekdo lepsi reseni ,tak ho urcite uvitam. Diky

CZechBoY
Člen | 3608
+
0
-

A na co ten http_host používáš?

kleinpetr
Člen | 480
+
0
-

no pouzival jsem to k rozeznani localhostu. napr. kdyz mam virtualhosty domain.local, tak jsem mel podminku, ze pokud http_host obsahuje .local, tak loadnul config.local.neon v opacnem pripade config.production.neon nehlede na to zda je zapnuty debugMode nebo ne.

IJVo
Člen | 38
+
+1
-

Já používám v bootstrap.php tuto podmínku

if (file_exists($localConfig = __DIR__ . '/config/config.local.neon')) {
	$configurator->addConfig($localConfig);
} elseif (file_exists($localConfig = __DIR__ . '/config/config.prod.neon')) {
	$configurator->addConfig($localConfig);
}

(config.local.neon na produkci nepřenáším) Třeba Ti to tak bude stačit.

kleinpetr
Člen | 480
+
0
-

@IJVo super, diky moc :)

Jan Endel
Člen | 1016
+
+1
-

Osobně bych šel raději cestou ENV proměnných – fungujou stejně na http i cli a budeš případně připravený i na docker v budoucnu. (Za předpokladu, že máš ssh přístup na server, případně sys admina, co je schopný je přidat na server).

kleinpetr
Člen | 480
+
0
-

@JanEndel Muzes to trochu rozvest ? ssh pristup mam

Jan Endel
Člen | 1016
+
+2
-

Už to za mě udělali jiní a lépe , ale ve zkratce, mám per projekt env variable (např MAIL_MICROSERVICE_ENVIRONMENT) a na tu se pak při loadování configů můžu odkazovat:

if (getenv('MAIL_MICROSERVICE_ENVIRONMENT') === 'local') {
    $this->configurator->load('/conf/config.local.neon');
}

ale má to i využití v testech na CI třebas (protože tam ty env proměnné máme taky).

Cíl je úplně vyhladit přístupy z config.neonu a přesunout je do env proměnných