Subdomény – co přesně do subdomény?
- Michalek
- Člen | 211
Zdravím, jak se routují subdomény, to jsem našel v pohodě. Jenom jsem se nikde nedozvěděl, jak z té subdomény do nette :-)
root
- blog (.example.com)
- chat (.example.com)
- www (.example.com)
- app
- libs
- index.php
(require APP_DIR . '/bootstrap.php';)
- Co mám dát do adresářů blog a chat tak, aby se to skrytě „přesměrovalo“ do www, kde běží celý projekt s nastavenými routami pro všechny subdomény a dělalo to to co chci?
- Případně lze routovat i subdomény, pro které nemám vytvořený adresář?
Díky :)
PS: To, že app a libs by teoreticky měly být jinde vím, tohle je jen příklad.
Editoval Michalek (7. 11. 2009 22:33)
- edke
- Člen | 198
Michalek wrote:
Zdravím, jak se routují subdomény, to jsem našel v pohodě. Jenom jsem se nikde nedozvěděl, jak z té subdomény do nette :-)
root
- blog (.example.com)
- chat (.example.com)
- www (.example.com)
- app
- libs
- index.php
(require APP_DIR . '/bootstrap.php';)
- Co mám dát do adresářů blog a chat tak, aby se to skrytě „přesměrovalo“ do www, kde běží celý projekt s nastavenými routami pro všechny subdomény a dělalo to to co chci?
- Případně lze routovat i subdomény, pro které nemám vytvořený adresář?
Díky :)
PS: To, že app a libs by teoreticky měly být jinde vím, tohle je jen příklad.
Myslim ze idealne by bolo, keby si vsetky 3 domeny (blog, chat aj www) smeroval do toho isteho document_rootu. Len ci ti to tvoj hosting povoluje.
- JakubKohout
- Člen | 92
máš vytvořenou pro každou subdoménu vlastní VirtualHost že ? Jinak by
si neměl takovouhle strukturu složek.
Máš tedy dvě varianty, buď u každého VirtualHostu nastavíš documentroot
do složky s www. Nebo u VirtualHostu WWW nastavíš ServerAlias na
*.example.com a ostatní virtualhosty smažeš.
- Filip Procházka
- Moderator | 4668
Co takhle? :)
<VirtualHost *:80>
ServerName www.kdyby.org
ServerAlias kdyby.org *.kdyby.org
DocumentRoot /home/hosiplan/www/org/kdyby
</VirtualHost>
- Michalek
- Člen | 211
Děkuji, poptám se.
Pro budoucí generace: Pokud někdo nemá možnost nastavit zmíněné výše, dá se udělat každá subdoména fyzicky, nacpat do ní
.htaccess
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# presmerovani na nette
RewriteRule !\.(cur|php|html|avi|swf|mpg|mp3|pdf|js|ico|gif|jpg|png|css|rar|zip|tar\.gz)$ index.php
</IfModule>
a soubor index.php
<?php
define('WWW_DIR', dirname(__FILE__) . '/../www/');
define('APP_DIR', WWW_DIR . '/!!_app');
define('LIBS_DIR', WWW_DIR . '/!!_libs');
require APP_DIR . '/bootstrap.php';
To zajistí, že se nette bude načítat z „www“ a všechno bude relativně fungovat :)
- Jakub Nerad
- Člen | 21
Michalek napsal(a):
Děkuji, poptám se.
Pro budoucí generace: Pokud někdo nemá možnost nastavit zmíněné výše, dá se udělat každá subdoména fyzicky, nacpat do ní
.htaccess
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # presmerovani na nette RewriteRule !\.(cur|php|html|avi|swf|mpg|mp3|pdf|js|ico|gif|jpg|png|css|rar|zip|tar\.gz)$ index.php </IfModule>
a soubor index.php
<?php define('WWW_DIR', dirname(__FILE__) . '/../www/'); define('APP_DIR', WWW_DIR . '/!!_app'); define('LIBS_DIR', WWW_DIR . '/!!_libs'); require APP_DIR . '/bootstrap.php';
To zajistí, že se nette bude načítat z „www“ a všechno bude relativně fungovat :)
Funguje dobře až na linkování stylů apod. … Nějaké řešení?
- Honza Kuchař
- Člen | 1662
Michalek napsal(a):
Na styly odkazuju absolutní url. http://www.example.com/css/styl.css
Velmi hezky je to řešeno v @layout.phtml ve Skeletonu.