Autor Zpráva
mirazbira
Profil
Prosím o radu s konkrétním příkladem nastavením domén.

www.prvnidomena.cz - s webhostingem
www.druhadomena.cz - bez hostingu

www.prvnidomena.cz/podadresar - prezentace pro doménu www.druhadomena.cz
Potřebuji aby druha domena nacitala prezentaci z podadresare prvni domeny.

Aktualni reseni:
www.druhadomena.cz - je nastavena jako alias prvni domeny a pomoci htacces presmerovavam do podadresare.
V Url mi ale zustane "podadresar" a toho bych se potreboval zbavit.

www.druhadomena.cz/podadresar/obsah - tohoto jsem schopen dosahnout
www.druhadomena.cz/obsah - tohoto chci dosahnout.

V Htaccess mám tento kód:
RewriteCond %{HTTP_HOST} druhadomena\.cz
RewriteRule ^(.*)$ /podadresar/$1 [L,QSA]

Poradite jak tento kod upravit, aby se mi nezobrazovalo slovo "podadresar" v URL ?
Je to pro mě trochu španělská vesnice.
Davex
Profil
mirazbira:
pomoci htacces presmerovavam do podadresare
To pravidlo není přesměrování, ale je to podstrčení, kdy v prohlížeči adresa zůstane a adresa se změní jen interně ve webserveru. Pravidlo tedy nemá na přítomnost podadresáře v adrese žádný vliv a mělo by normálně fungovat (pokud nechybí zapnutí mod_rewrite - RewriteEngine On a pravidlo proti zacyklení, což tam asi někde je).
mirazbira
Profil
Davex, Davex:
Ano pravidlo funguje v tom smyslu že dostávám místo www.prvnidomena.cz/podaresar/obsah v prohlížeči adresu www.druhadomena.cz/podadresar/obsah. Ale nejsem schopen se zbavit toho "podadresar". Teď si nejsem jistý, jestli správně chápu vaši odpověď. Chcete tím říci, že toto pravidlo pokud je správně nastavené by mělo správně nahradit i ten "podadresar" ?

Zjednodušeně řečeno, potřebuji ukrýt slovo "podadresar" z adresního řádku prohlížeče.
Davex
Profil
mirazbira:
pravidlo funguje v tom smyslu že dostávám místo www.prvnidomena.cz/podaresar/obsah v prohlížeči adresu www.druhadomena.cz/podadresar/obsah
Co znamená dostávám? Popisované chování by naopak mohlo znamenat, že se přepisovací pravidlo vůbec nepoužívá a funguje jen ten alias.

To pravidlo podadresář nenahrazuje ani nijak viditelně nedoplňuje. Dělá jen to, že když se do prohlížeče zadá adresa www.druhadomena.cz/obsah, tak by se měl načíst objekt www.prvnidomena.cz/podadresar/obsah. Nic víc.
mirazbira
Profil
mirazbira, mirazbira:
Z Davex Když zadám do prohlížeče adresu www.druhadomena.cz, tak se objeví podstrčený obsah www.prvnidomena.cz/podadresar. Protože ale jsou na stránce odkazy na další stránky, tak když na kliknu na odkaz na nějakou další stránku, pak v prohlížeči vidím url "www.druhadomena.cz/podadresar/obsah". A když to zkusím obráceně dle vašeho popisu - do prohlížeče napíšu www.druhadomena.cz/obsah, tak stránka neexistuje, tedy www.prvnidomena.cz/podadresar/obsah se nepodstrčí.
Davex
Profil
mirazbira:
Protože ale jsou na stránce odkazy na další stránky, tak když na kliknu na odkaz na nějakou další stránku, pak v prohlížeči vidím url "www.druhadomena.cz/podadresar/obsah".
Pak jsou pravděpodobně ty odkazy špatně a je v nich obsažen i podadresář. Do HTML kódu stránky mod_rewrite nezasahuje.

do prohlížeče napíšu www.druhadomena.cz/obsah, tak stránka neexistuje, tedy www.prvnidomena.cz/podadresar/obsah se nepodstrčí
Nejsou tam nějaká další pravidla, která by mohla kolidovat? Pravidlo pro podstrčení obsahu z jiného adresáře by mělo být před všemi ostatními.
mirazbira
Profil
Davex:
Odkazy jsou nastaveny bez podadresáře. Podadresář běží na redakčním systému Joomla, který má svůj htaccess kvůli SEO URL
Tento htacces je i v rootu (v rootu je navíc řešený kód, který následuje hned po RewriteEngine On)

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$  [NC]
RewriteRule ^(content/|component/) index.php

RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$  [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php

RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
# Block out any script trying to base64_encode crap to send via URL
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
# Block out any script that includes a <script> tag in URL
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Send all blocked request to homepage with 403 Forbidden error!
RewriteRule ^(.*)$ index.php [F,L]
# 

Může toto mít vliv ? Nejsem schopen posoudit jestli toto může být v kolizi.
Davex
Profil
V této podobě to vypadá v pořádku.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: