[drupal-devel] Cleaner Directory structure
K B
kbahey at gmail.com
Mon May 9 13:36:18 UTC 2005
> While on this theme it might be a good idea to consider the different
> deployment scenarios, their merits and how does that change the
> configuration. For example:
>
> In shared hosting:
> drupal/core
> drupal/local
> drupal/index.php
> drupal/.htaccess
No, it is like this:
public_html/
public_html/.htaccess
public_html/index.php
public_html/drupal/
public_html/drupal/core
public_html/drupal/local
Then the admin can put:
public_html/files
public_html/somethingelse
As long as they are outside of the drupal directory.
This way, the index.php is in the public_html directory of the
account, and .htaccess affects how it works.
> Custom (non-distribution) unix install:
> (in /usr/local)
>
> lib/drupal - equivalent to core above
> var/drupal - equivalent to local above
>
> var/www/drupal/sites/example.com/files - this is configurable anyway
>
> lib|var/drupal are not in the web-server's display paths, this
> potentially makes sharing the same web-server location with other
> apps easier
I think this is a bit overkill.
We do not do this now, and it works fine for both shared and dedicated hosting.
The admin of such a system can do all the tricks he wants separating
filesystems and such using symlinks.
> windows based installs:
> I'm clueless there
>
> The changes to the current drupal are minimal, mainly in the multi-site
> file include code.
>
> Apropos. Recently there was a lengthy discussion on the debian-security
> mailing list about the general security status and practises of php
> applications. There was, let's say, discomfort about exposed
> configurations, 'talking' files, etc... While drupal is relatively good
> in this respect, we should be able to enable better practises and offer
> advice on the site configuration choices. Not everyone is experienced.
> Some people are willing to learn.
This is why I mentioned the possibility of moving Drupal to the
directory ABOVE the public_html, so nothing can be read at the web
server level, and if the web server misbehaves, and does not process
.php files, no peeping Toms can see the configuration.
I have done this in the past on a crude CMS that was home grown. It
needed changes to the php include path to work correctly, which we
still can do in the .htaccess anyway, and guaranteed a certain level
of security.
More information about the drupal-devel
mailing list