[support] How to move a Drupal site below the domain root folder?

Shai Gluskin shai at content2zero.com
Tue Apr 8 13:10:55 UTC 2008


Albert,

Earnie is giving you good information. I'm just providing an alternative. I,
personally know so little about mod_rewrite and the other stuff in the
.htaccess file as well as httpd.conf file that I avoid doing things the way
you have done them. I find the easiest way to move sites around is to have
Drupal always installed at the domain root. In your case, create a subdomain
like drupal6.example.com and create it at: public_html/drupal6/. (I use
cpanel to create it on my server, but Plesk or the command line will do it
as well.). With this set-up Drupal has no idea that all your files are in a
subdirectoy of public_html. Drupal thinks they are at the root, and
everything is cool.  Don't forget to point the subdomain to the host IP if
nameserver is set somewhere else other than server where you are installing
the subdomain. Also remember that if you have created the directory sites/
example.com that you need to change its name to: sites/drupal6.example.com.

Earnie's advice about truncating cache and sessions table is good for this
method as well (phpMyAdmin calls "truncate" -- "empty").

Re: absolute paths. Here and there there might be a module, or typically
user pics that use absolute paths. I go into phpMyadmin and search on the
old root domain and then replace the old root path with the new root path in
the database. Also, whenever I'm creating links inside content to another
page on the site I always use "root relative" (I think that is the term)
paths and never "relative" paths. For example, I use <a href="/node/13"> and
*not* <a href="node/13">. I find this solves a lot of problems.

Now that I have a VPS hosting account (for $45/month at http://modvps.com)
and I can create as many accounts as I want, I don't even bother with
installing a subdomain inside a directory of another account. I'll create a
"real" account for the subdomain and put the Drupal install at public_html.

And as I began, there are many ways to handle this issue, I'm just sharing
my personal experience and methods that seem to be pretty easy, for me at
least.

Shai

On Tue, Apr 8, 2008 at 8:05 AM, Earnie Boyd <earnie at users.sourceforge.net>
wrote:

> Quoting Albert Cuesta <acuesta at gmail.com>:
>
> > As part of a Drupal 5.x to 6.x upgrade, I have moved my Drupal site to
> > a folder below the HTML root level of my server, so now it's at
> > public_html/drupal6 instead of public_html as before.
> >
>
> Is there a reason why you can't update the httpd.conf for the site so
> that the DocumentRoot is public_html/drupal6 instead of public_html?
>
> > Now the site stopped working beyond the front page: users can login
> > but cannot logout, all links display an unthemed front page, and so on
> >
> > Can somebody explain the required configuration of .htaccess (for the
> > domain root and the drupal6 folder) and settings.php so the site works
> > again? I think I have already tried everything in the handbook and
> > readme :-(
> >
>
> Cache tables, sessions table probably need to be truncated.  Browser
> caches may need to be emptied as well.  Did you change the RewriteBase
> in the .htaccess file?
>
> Earnie -- http://for-my-kids.com/
> -- http://give-me-an-offer.com/
>
> --
> [ Drupal support list | http://lists.drupal.org/ ]
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.drupal.org/pipermail/support/attachments/20080408/f42df5b6/attachment.htm 


More information about the support mailing list