Home Blog pc-software Rewrite Root dir to Subdir in Joomla

Rewrite Root dir to Subdir in Joomla

Popis: 2010-05-02 | pc-software Rewrite Root dir to Subdir in Joomla | .htaccess odlišné webové systémy (např. wordpress a joomla) a provozovat je vedle sebe na jedné subdoméně
Klíčová slova:
Hits: 2035
Hodnocení uživatelů: / 0
NejhoršíNejlepší 
Blog - pc-software
Napsal uživatel Administrator   
Neděle, 02 Květen 2010 01:00

Mám joomla nainstalován v subdiru, ale URL chci bez subdiru.
Velice užitečné prepsání (podsrčení) root URL za subdir URL.
V subdir máme uložen CMS Joomla. Např. v /joomla, zde je i configuration.php k joomla a .httacces
 V root diru máme další .htaccess.
web je umístěn na http://yoursite.cz/

V subdiru

1) v configuration.php změnit 

var $live_site = ′′;

na
var $live_site = ′http://yoursite.cz/′;
2)v .httacces změnit  (případně doplnit hned nahoru pod RewriteEngine on)
RewriteBase /joomla

V rootu

Přesměruje veškeré dotazy na URL do složky serveru /joomla jde provést několika způsoby

1) do .httacces vložit
(případně doplnit hned nahoru pod rewritebase)
RewriteEngine on

	#definice výchozího adresare

	RewriteBase /

	 #Rewrites http://yoursite.cz/joomla to http://yoursite.cz/

	RewriteCond %{REQUEST_URI} !^/joomla

	RewriteRule ^(.*)$ joomla/$1 [L]

2) do .httacces vložil
nebo jinak Přesměruje veškeré dotazy na URL do složky serveru /joomla
 
RewriteEngine on

	#definice výchozího adresare

	RewriteBase /

	#Rewrites http://yoursite.cz/joomla to http://yoursite.cz/

	RewriteCond %{ENV:REDIRECT_STATUS} ^$ 

	RewriteRule ^(.*)$ /joomla/$1 [QSA,L]

 
3) do .httacces vložil
nebo modifikované 1, kde root URL a ve vybraných složkách ukazuje na (skutečnou) serverovou cestu, ostatní složky jsou na serveru v složce /joomla. To umožňuje vymezit prostor pro odlišné webové systémy (např. wordpress a joomla) a provozovat je vedle sebe na jedné subdoméně.
 Konkrétně řádek 4 RewriteCond
 
RewriteEngine on
	
		#definice výchozího adresare

		RewriteBase /

		#Rewrites http://yoursite.cz/joomla to http://yoursite.cz/

		RewriteCond %{REQUEST_URI} !^(/$|/index-old.php$|/styl-old.css$|/styl.css$|/styl1.css$|/admin/|/blog/)

		RewriteRule ^(.*)$ joomla/$1 [L]

kde v závorce za podmínka RewriteCond %{REQUEST_URI} !^ znamená :
"pokud není na začátku"
/$ root URL, bez toho nefunguje adninistace v Joomla!
/index-old.php soubor z root URL, původní index webu
/styl.css$ soubor z root URL, bez toho nefunguje styl k původnímu indexu
/upload/ adresar z root URL , chceme http://yoursite.cz/upload/... na serveru v www/upload/


 
původní URL např. URL http://yoursite.cz/joomla, vrátí chyba 404. Opravit by mohlo jít pomocí redirect ...  
ale s tímto pak nefunguje login z front endu, proto je zakomentované
#Rewrites http://yoursite.cz/subdir to http://yoursite.cz/

	#nefunguje login

	#RewriteCond %{REQUEST_URI} !(.|/$)

	#RewriteRule (.*) http://yoursite.cz/$1/ [R=301,L]

 
Aktualizováno Sobota, 15 Říjen 2011 07:44