1. Backup your databse, this is just incase something goes wrong but nothing should 
(An easy way to backup your database while not suggested is to use DavidMIRV's Addon in concrete5.4.0+ this is built in (no addon needed))
*Note: If moving from Windows to Linux make a mysql patch using this Addon.
2. Backup your file structure (the place you installed c5) this is also just incase something goes wrong.
Ok now for the moving part.
3. Disable AND clear the cache.
4. Disable Pretty url's (you can re-enable later)
5. Move your c5 directory to where you want it to go, (the place where the index.php is)
6. Open the /config/site.php NOT the /concrete/config folder.
7. You will see something that looks like this:
define('DB_SERVER', 'mysql.yoursite.com');
define('DB_USERNAME', 'username');
define('DB_PASSWORD', 'pass');
define('DB_DATABASE', 'dbname');
define('BASE_URL', 'http://site.com');
define('DIR_REL', '');
define('PASSWORD_SALT', 'JKSD84KSFU94WJHFS984JS0F03JF0SJ3');
there are 2 main lines we need to look at:
define('BASE_URL', 'http://site.com');
define('DIR_REL', '');
8. in the line: define('BASE_URL', 'http://site.com');
Where it says your site name e.g. concrete5.org. Change that you your new url so it would be like"
define('BASE_URL', 'http://url.concrete5.org');
make sure there are NO slashes in it!
if you are installing it in the root directory of a domain (like concrete5.org and NOT concrete5.org/url) then you are done Yipee!!!!
9. If not you got 1 more step,
If you lets say are moving from the c5 site from this url: concrete5.org/url
to this url: concrete5.org, this is what the line would look like:
define('DIR_REL', '/url');
to move it to the root directory just change it to:
define('DIR_REL', '');
if you are moving from concrete5.org/url to concrete5.org/url2 you would just change the /url to /url2
10. This step is only if you are moving your mysql database. You should have already backed up your database in Step 1. Open your site.php from the above steps:
define('DB_SERVER', 'mysql.yoursite.com');
define('DB_USERNAME', 'username');
define('DB_PASSWORD', 'pass');
define('DB_DATABASE', 'dbname');
define('BASE_URL', 'http://site.com');
define('DIR_REL', '');
define('PASSWORD_SALT', 'JKSD84KSFU94WJHFS984JS0F03JF0SJ3');
we are going to look at
define('DB_SERVER', 'mysql.yoursite.com');
define('DB_USERNAME', 'username');
define('DB_PASSWORD', 'pass');
define('DB_DATABASE', 'dbname');
from here its pretty obvious, insert the info for your database, but first! import the sql file you exported in Step 1.
Now go to Dashboard-> Maintenance->Run Jobs to generate a new sitemap.xml file and refresh the search index.
Thats it!
If you need any help PM me
Mike/Mnkras
Last updated 11/30/10