= Drupal HowTo Copy site to test server Tags: [[Drupal]] [[HowTo]] == Process 1. Run the [[https://www.drupal.org/node/59373|Full backup script]] to produce a file called something like {{{sitebackup-YYYY-MM-DD.tgz}}} 1. {{{scp}}} the tar file to the new server 1. {{{tar -zxvf sitebackup-YYYY-MM-DD.tgz}}}, which will produce 2 files called {{{dbcontent.sql}}} and {{{filecontent.tar}}} 1. Create a directory for the web folder `mkdir /local/www/{site name}` 1. Copy {{{filecontent.tar}}} into the web folder 1. Cd into the web folder and unpack the tar file `tar -xvf filecontent.tar` 1. Amend the settings file in `{web folder}/sites/default/settings.php` 1. Change `$base_url` to the appropriate address 1. Change the database, username and password settings to appropriate values. 1. Log into MySql 1. Create the database using {{{CREATE DATABASE {databasename} CHARACTER SET utf8 COLLATE utf8_general_ci;}}} 1. Grant the user permissions to the database using {{{GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES ON {databasename}.* TO '{username}'@'localhost' IDENTIFIED BY '{password}';}}} 1. **This user should not be the admin user account** 1. Restore the contents to the database using {{{mysql -u {username} -p {database} < dbcontent.sql}}} 1. Change the apache config file `/local/apache2/etc/httpd.conf` 1. Remove the section: {{{ DocumentRoot "/local/www/htdocs" Options None AllowOverride None Order allow,deny Allow from all }}} 1. And replace it with: {{{ DocumentRoot "/local/www/{site name}/" Options FollowSymLinks Indexes AllowOverride None Order allow,deny Allow from all Include /local/www/{site name}/.htaccess }}} 1. Restart Apache [[BackLinks]]