Ako docielit presmerovanie virtualnych subdomen do hlavnej domeny?
- Matúš Matula
- Člen | 257
Nech mam domenu example.com
, na kt. bezi aplikacia. Routy mam
v tvare
<?php
$routes[] = new Route('//[<client>.]example.com/<presenter>/<action>', array(
'presenter' => 'Default',
'action' => 'detail',
);
?>
teda pre kazdeho klienta chcem mat virtualnu subdomenu. Ako nastavit Apache
(prip. .htaccess
) aby mi poziadavky z neexistujucej subdomeny
napr. client1.example.com
presmerovalo na index v
example.com
, kde by ich spracovalo uz Nette?
- Filip Procházka
- Moderator | 4668
V Apache2 jsou tzv VirtualHost
y
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com *.example.com
ServerAdmin admin@example.com
DocumentRoot /var/www/example.com/document_root
...
Více info na http://httpd.apache.org/…/2.0/vhosts/
Důležité je, mít nějaké DNS, které zařídí, že všechny subdomény se ti systém správně nasměrují na apache.
- Matúš Matula
- Člen | 257
Dik, virtualHosty som mal nastavene, akurat som zabudol na to DNS..na locale som to poriesil, teraz uvidim, co dokazu borci na supporte :D
- bojovyletoun
- Člen | 667
Ahoj, mám problém: Chtěl jsem si zprovoznit aplikaci na url využívající proměnné domény 3. řádu. (neco.webik.loc) — bezmu to od začátku:
- nastavení DNS:
- Musel jsem využít dns server, protože hosts ve windows neumí zapsat 127.0.0.1 *.webik.cz.
- Využil jsem Acrylic DNS proxy. Aby fungovalo, musel jsem v konfigu
AcrylicConfiguration.ini upravit
LocalBindingAddress=0.0.0.0
→LocalBindingAddress=127.0.0.1
. - Přidal jsem do AcrylicHosts.txt
127.0.0.1 *.loc
- Nastavil Ve windows DNS server na 127.0.0.1
- I když jsem v AcrylicConfiguration.ini nastavil primární dns svůj router nebo opendns, nefunguje připojení k netu**. (Wireshark zjistil, že se neposílají žádné dns po ethernetu), ale v logu acrylic je, že dotaz byl forwardován.
- Apache:
- routování na subweby jede.
- **problém: chci zjistit odněkud „webik1.loc“. (tedy to co je definováno v ServerName). $_SERVER[‚SERVER_NAME‘ a ‚HTTP_HOST‘] hážou vždy celého hosta (pepa.webik1.loc)
.cong
:
- za další jenom kosmetická:
- jak zapsat do routy parametr subdomeny tak, aby se v odkazech nemazal?
$router[] = new Route("//[<dom>.]".$ServerName."/<presenter>/<action>", "Hoch:default")
NameVirtualHost 127.0.0.1
ServerName nonset.cc # jen fallback,
ServerAdmin Nonset
DocumentRoot c:/web/htdocs/default
<VirtualHost 127.0.0.1:*>
# trap
ServerName nonsettr.cc #fallback č.2,
ServerAdmin NonsetTr
DocumentRoot c:/web/htdocs/defaulttr
</VirtualHost>
<VirtualHost 127.0.0.1:*> # project 1
ServerName webik1.loc
ServerAdmin Kardinál
ServerAlias *.webik1.loc
DocumentRoot "c:/web/htdocs/examples/faceboch"
</VirtualHost>