Can I move the default Concrete5 files / folders to a subfolder?

Permalink
I've been using Concrete5 for a few years now, on dozens of sites. I'm wanting to know if it's possible to move the default c5 folders to a subfolder just for Concrete5?

Instead of /home/username/public_html:

/blocks
/concrete
/config
/controllers
/css
/elements
/files
...etc.

It would be great to have just this in the web root:

/index.php
/concrete5

With all of the previously mentioned directories in the /concrete5 folder.

Is this possible?

 
mhawke replied on at Permalink Reply
mhawke
bw1 replied on at Permalink Reply
"What are you trying to solve?" -> Essentially... clutter. It's not a necessity, but it would sure clean things up and keep c5 separate from the other apps and directories that are part of a few of the domains that I manage.

When there's, say, a billing app in /public_html/billing, that directory mixes right in with the rest of c5, and while the other apps are pretty self contained, c5 takes up a whopping -20- directories -plus- a few other files right in the root of public_html.

It's not that it's a huge problem, but since everything runs through one index.php it seems like it wouldn't take much to achieve this. If there are good reasons against it, by all means let me know, but for all I know it was just an oversight that wasn't ever considered.
mhawke replied on at Permalink Reply
mhawke
Does your hosting package let you point your domain to a sub-folder? You can place your concrete5 installation into the sub-folder so you end up with:

public_html/billing/
public_html/concrete5/blocks, config, etc

The problem comes in all the path-building code that concrete5 uses internally to find everything. This code relies on a consistent and predictable relationship between all the folders.
bw1 replied on at Permalink Reply
We have a dedicated server, so yes that would work. The problem I see with it is that then -everything- for that domain (subdomains aside, since they can also be mapped to other folders) would still be in the same directory.

I was mainly asking because if it was as easy as changing a line or two in the main index.php or a config file I would do it. If it's clearly not support, nor relatively easy to do, I probably won't.

That being said, and I don't see this being taken all that seriously as a feature request, but if it wouldn't take much to implement it's something to consider for future versions. It may not seem like much of a help, but it would sure minimize the footprint the CMS has on the directory structure for anything else alongside it. :)
mhawke replied on at Permalink Reply
mhawke
I do a lot of repair work on broken c5 sites and the last thing I need is to have a user-configurable file structure. Yikes.
bw1 replied on at Permalink Reply
Well, I completely see where you're coming from there. That could be a huge mess, if done poorly.

I was picturing something simple, like a
root = 'concrete5' or
root = '/'

...or something to that effect in the main index.php. It would be specified once, and in an obvious known location.

I feel like I'm fighting for one of those stupid pointless requests that would benefit three people here, but if it's an easy option to implement, it would be a nice way to neaten things up a bit and contain the app.