Instead of installing Joomla in the web root (public_html), some like to put
the Joomla files in a subfolder for better housekeeping.
It's cleaner to see folders when you list publc_html and not all
the Joomla files, especially if you have other server applications
installed such as blogs, forums, etc, or have created folders for
add-on or sub domains.
When Joomla is installed in a subdirectory the appearance of the
subfolder in urls may be undesireable.
mod_rewrite can remove the subfolder from the url.
http://domain.com/joomla/index.php
will become
http://domain.com/index.php
Below are two different examples. If one does not work try the other. Using bits of each might work too.
Example1:
1. edit the file joomla/configuration.php.In Joomla 1.5 var live_site is empty by default
Change
var live_site = '';
To
var live_site = 'http://www.domain.com';
(In Joomla 1.0 you would be looking in the same file for $mosConfig_live_site =)
2. Edit or create the file named .htaccess (invisible files begin with a period) in
your webroot (not the one in the joomla subdirectory) and change its content to:
Options +FollowSymlinks
RewriteEngine on
RewriteBase /
# Add trailing slash if path does not contain a period or end with a slash
RewriteCond %{REQUEST_URI} !(\.|/$)
RewriteRule (.*) http://www.domain.ca/$1/ [R=301,L]
# Change http://yoursite.com to http://www.yoursite.com
RewriteCond %{HTTP_HOST} ^domain.ca$
RewriteRule ^/?(.*)$ http://www.domain.ca/$1 [R=301,L]
# Exclude any subdirectories in the site root that should NOT be affected.
# include the Joomla subdir
# best not to use directories in your site root that also exist in joomla e.g. images
RewriteCond %{REQUEST_URI} !^/subdir
#or separate multiple directories with |
#RewriteCond %{REQUEST_URI} !^/(dir1|dir2|dir3)
#if you have other domains (add-on domains) they should be added here to not affect
RewriteCond %{HTTP_HOST} !^otherdomain.ca$
#Rewrites http://www.domain.ca/ to http://www.domain.ca/subdir
RewriteRule ^(.*)$ subdir/$1 [L]
#Replace domain.ca with your domain and subdir with the name of the subdirectory in which you have installed Joomla.
-------------------------------------------------------------------------------------------------
Example 2:
The example below does not require listing of folders to be omitted and only affects specified domain, but did not work for me in IE8.1. edit the file joomla/configuration.php.
In Joomla 1.5 var live_site is empty by default
Change
var live_site = '';
To
var live_site = 'http://domain.com';
2. Edit or create the file named .htaccess (invisible files begin with a period) in
your webroot (not the one in the joomla subdirectory) and change its content to:
Options +FollowSymlinks
RewriteEngine on
# remove "www"
RewriteCond %{HTTP_HOST} ^www.domain.ca$ [NC]
RewriteRule ^(.*)$ http://domain.ca/$1 [R=301,L]
# Redirect to the Joomla root folder
RewriteCond %{HTTP_HOST} ^(www\.)?domain\.ca$ [NC]
RewriteRule ^(index\.html)?$ http://domain.ca/subdir/ [R=301]
# Only apply to URLs on this domain
RewriteCond %{HTTP_HOST} ^(www\.)?domain\.ca$
# Only apply to URLs that aren't already under folder
RewriteCond %{REQUEST_URI} !^/subdir/
# Don't apply to URLs that go to existing files or folders
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Rewrite all those to insert /subdir
RewriteRule ^(.*)$ /subdir/$1 [L]
#Replace domain.ca with your domain and subdir with the name of the subdirectory in which you have installed Joomla.
Best Canadian Web Host for Joomla
No comments:
Post a Comment